body{margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.password-modal-overlay{align-items:center;background:var(--color-shadow-heavy);bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.password-modal{background:var(--color-background);border-radius:12px;box-shadow:0 25px 50px var(--color-shadow-heavy);max-height:90vh;max-width:450px;overflow-y:auto;width:100%}.password-modal-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:24px;padding:24px 24px 0}.password-modal-header h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.password-modal-close{align-items:center;background:none;border:none;border-radius:50%;color:var(--color-text-light);cursor:pointer;display:flex;font-size:24px;height:30px;justify-content:center;padding:0;transition:all .2s ease;width:30px}.password-modal-close:hover{background:var(--color-background-secondary);color:var(--color-text-secondary)}.password-modal-body{padding:0 24px 24px}.password-modal-warning{background:var(--color-error-light);border-left:4px solid var(--color-error);border-radius:8px;color:var(--color-error);margin-bottom:24px;padding:16px}.password-modal-warning p{font-weight:500;margin:0}.password-change-form{display:flex;flex-direction:column;gap:20px}.password-change-form .form-group{margin-bottom:0}.password-change-form label{color:var(--color-text-primary);display:block;font-size:.9rem;font-weight:500;margin-bottom:8px}.password-change-form input{background:var(--color-background);border:2px solid var(--color-border);border-radius:8px;box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.password-change-form input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.password-change-form input:disabled{background-color:var(--color-background-secondary);cursor:not-allowed}.password-modal-actions{display:flex;gap:12px;margin-top:24px}.password-change-button{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px 20px;transition:transform .2s ease,box-shadow .2s ease}.password-change-button:hover:not(:disabled){box-shadow:0 8px 25px var(--color-primary-light);transform:translateY(-1px)}.password-change-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.password-cancel-button{background:var(--color-background-secondary);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:14px 20px;transition:all .2s ease}.password-cancel-button:hover:not(:disabled){background:var(--color-background-tertiary);border-color:var(--color-border-focus)}.password-cancel-button:disabled{cursor:not-allowed;opacity:.6}.error-message{border-left:4px solid var(--color-error);margin:0}@media (max-width:480px){.password-modal{margin:10px;max-width:none}.password-modal-body,.password-modal-header{padding:20px}.password-modal-actions{flex-direction:column}}.language-switcher{align-items:center;display:flex}.language-select{background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);cursor:pointer;font-size:.9rem;padding:6px 12px;transition:border-color .2s ease}.language-select:focus,.language-select:hover{border-color:var(--color-border-focus)}.language-select:focus{box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.login-container{align-items:center;background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);display:flex;justify-content:center;min-height:100vh;padding:20px;position:relative}.login-language-switcher{left:20px;position:absolute;top:20px;z-index:10}.login-language-switcher .language-select{background:#ffffffe6;border:1px solid #ffffff4d;color:var(--color-text-primary);font-weight:500}.login-language-switcher .language-select:hover{background:#fff;border-color:#ffffff80}.login-card{background:var(--color-background);border-radius:12px;box-shadow:0 15px 35px var(--color-shadow-medium);max-width:400px;padding:40px;width:100%}.login-header{margin-bottom:30px;text-align:center}.login-header h1{color:var(--color-text-primary);font-size:2.5rem;font-weight:700;letter-spacing:-.5px;margin:0}.login-header h2{color:var(--color-text-secondary);font-size:1.2rem;font-weight:500;margin:10px 0 5px}.login-header p{color:var(--color-text-light);font-size:.9rem;margin:0}.login-form{margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{margin-bottom:8px}.form-group input{background-color:var(--color-background);border:2px solid var(--color-border);border-radius:8px;box-sizing:border-box;color:var(--color-text-primary);font-size:1rem;padding:12px 16px;transition:border-color .2s ease;width:100%}.form-group input:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-group input:disabled{background-color:var(--color-background-secondary);cursor:not-allowed}.error-message{padding:12px 16px}.login-button{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:14px 20px;transition:transform .2s ease,box-shadow .2s ease;width:100%}.login-button:hover:not(:disabled){box-shadow:0 8px 25px var(--color-primary-light);transform:translateY(-1px)}.login-button:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.login-footer{border-top:1px solid var(--color-border);padding-top:20px;text-align:center}.login-footer p{color:var(--color-text-light);font-size:.8rem;margin:5px 0}.login-footer p:first-child{color:var(--color-text-secondary);font-weight:600;margin-bottom:10px}.theme-selector{align-items:center;display:flex;gap:.5rem}.theme-select{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);cursor:pointer;font-size:.9rem;min-width:150px;padding:.5rem .75rem;transition:all .2s ease}.theme-select:focus{box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.theme-select:focus,.theme-select:hover{border-color:var(--color-border-focus)}.theme-preview{border:2px solid var(--color-border);border-radius:50%;flex-shrink:0;height:20px;transition:all .2s ease;width:20px}.theme-selector:hover .theme-preview{border-color:var(--color-border-focus);transform:scale(1.1)}.theme-selector.compact{gap:.25rem}.theme-selector.compact .theme-select{font-size:.8rem;min-width:120px;padding:.25rem .5rem}.theme-selector.compact .theme-preview{height:16px;width:16px}.modal-overlay{background-color:var(--color-shadow-heavy)}.modal-content{border-radius:8px;box-shadow:0 4px 20px var(--color-shadow-heavy)}.modal-header{padding:20px}.modal-close{border-radius:50%;font-size:24px;height:30px;transition:background-color .2s;width:30px}.modal-close:hover{background-color:var(--color-background-secondary)}.create-employee-form{padding:20px}.form-row{grid-gap:15px;gap:15px;margin-bottom:15px}.form-group label{margin-bottom:5px}.form-group input,.form-group select{background:var(--color-background);border-radius:4px;font-size:14px;padding:10px;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light)}.uid-input-group{gap:5px}.refresh-uid-button{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:14px;justify-content:center;min-width:40px;padding:10px;transition:background-color .2s}.refresh-uid-button:hover:not(:disabled){background:var(--color-background-tertiary)}.refresh-uid-button:disabled{cursor:not-allowed;opacity:.6}.form-hint{color:var(--color-text-secondary);font-size:12px;margin-top:5px}.checkbox-group{margin:20px 0}.checkbox-group label{align-items:center;cursor:pointer;flex-direction:row}.checkbox-group input{margin-bottom:0;margin-right:8px}.error-message{margin-bottom:15px;padding:10px}.modal-footer{background-color:var(--color-background-secondary);gap:10px;padding:20px}.cancel-button,.submit-button{border:none;border-radius:4px;cursor:pointer;font-size:14px;font-weight:500;padding:10px 20px;transition:background-color .2s}.cancel-button{background-color:var(--color-text-secondary);color:#fff}.cancel-button:hover:not(:disabled){background-color:var(--color-text-secondary);opacity:.9}.submit-button{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);color:#fff}.submit-button:hover:not(:disabled){opacity:.9}.cancel-button:disabled,.submit-button:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.form-row{grid-template-columns:1fr}.modal-content{margin:10px;width:95%}}.app-header{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);box-shadow:0 4px 6px var(--color-shadow-light);color:#fff;left:0;margin:0;padding:30px;position:relative;top:0;width:100%}.app-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.header-left{align-items:center;cursor:pointer;display:flex;transition:transform .3s ease}.header-left:hover{transform:translateY(-2px)}.app-logo{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border-radius:12px;display:flex;height:48px;justify-content:center;margin-right:16px;width:48px}.logo-icon{fill:#fff;height:28px;width:28px}.app-title{display:flex;flex-direction:column}.app-name{font-size:1.8rem;font-weight:700;margin:0}.app-subtitle{font-size:.9rem;margin:0;opacity:.8}.section-title{flex:1 1;text-align:center}.section-title h2{color:#fff;font-size:2.2rem;font-weight:700;margin:0}.header-actions{align-items:center;display:flex;gap:15px}.auto-refresh-control,.welcome-text{color:#fff}@media (max-width:768px){.app-header{padding:20px 15px}.app-header-content{flex-direction:column;gap:15px}.header-left{align-self:flex-start}.logo-icon{height:24px;width:24px}.app-name{font-size:1.4rem}.app-subtitle{font-size:.8rem}.section-title h2{font-size:1.8rem}}.dashboard-container{background-color:var(--color-background-page);margin:0;min-height:100vh;padding:0}.language-switcher .language-select{background:#ffffffe6;border:1px solid #ffffff4d;color:var(--color-text-primary)}.language-switcher .language-select:hover{background:#fff}.header-right .theme-selector .theme-select{background:#ffffffe6;border:1px solid #ffffff4d;color:var(--color-text-primary)}.header-right .theme-selector .theme-select:hover{background:#fff}.welcome-text{font-size:1rem;font-weight:500;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-button{background:#fff3;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:8px 16px;transition:background-color .2s ease}.logout-button:hover{background:#ffffff4d}.dashboard-main{margin:0 auto;max-width:1200px;padding:40px 30px}.collapsible-section{margin-bottom:40px}.section-header{align-items:center;border-bottom:2px solid var(--color-border);cursor:pointer;display:flex;justify-content:space-between;margin-bottom:20px;padding:15px 0;transition:border-color .2s ease}.section-header:hover{border-color:var(--color-primary)}.section-header h2,.section-header h3{color:var(--color-text-primary);margin:0}.section-header h2{font-size:2rem}.section-header h3{font-size:1.5rem}.collapse-button{background:none;border:none;border-radius:4px;color:var(--color-primary);cursor:pointer;font-size:1.2rem;padding:5px;transition:background-color .2s ease,transform .2s ease}.collapse-button:hover{background-color:var(--color-background-secondary);transform:scale(1.1)}.section-content{animation:fadeIn .3s ease-in-out}.section-content>p{color:var(--color-text-secondary);font-size:1.1rem;margin-bottom:30px;text-align:center}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:50px}.stat-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);padding:24px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{box-shadow:0 8px 25px var(--color-shadow-medium);transform:translateY(-2px)}.stat-card .stat-icon{font-size:2.5rem;margin-bottom:16px}.stat-card h3{color:var(--color-text-primary);font-size:1.2rem;font-weight:600;margin-bottom:12px}.stat-value{color:var(--color-primary);font-size:1.5rem;font-weight:700;margin-bottom:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-label{font-size:.9rem;margin-bottom:4px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.action-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);padding:20px;text-align:center;transition:transform .2s ease}.action-card:hover{transform:translateY(-2px)}.action-card h4{color:var(--color-text-primary);font-size:1.1rem;margin-bottom:8px}.action-card p{font-size:.9rem;line-height:1.4;margin-bottom:16px}.action-button,.action-card p{color:var(--color-text-secondary)}.action-button{background:var(--color-background-tertiary);cursor:not-allowed;padding:10px 20px;transition:background-color .2s ease}.action-button:not(:disabled){background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%);color:#fff;cursor:pointer}.action-button:not(:disabled):hover{opacity:.9}@media (max-width:768px){.header-content{flex-direction:column;gap:20px;text-align:center}.actions-grid,.stats-grid{grid-template-columns:1fr}.dashboard-main{padding:20px 15px}.section-header h2{font-size:1.5rem}.section-header h3{font-size:1.3rem}.section-header{padding:10px 0}.collapse-button{font-size:1rem}}.test-dashboard{background-color:var(--color-background-page);margin:0;min-height:100vh;padding:0}.auto-refresh-control{align-items:center;display:flex;font-size:.9rem;gap:.5rem}.auto-refresh-control input[type=checkbox]{height:1rem;width:1rem}.refresh-button{background:#fff3;border:1px solid #ffffff4d;border-radius:.5rem;color:#fff;cursor:pointer;padding:.5rem 1rem;transition:all .3s ease}.refresh-button:hover{background:#ffffff4d;transform:translateY(-1px)}.test-dashboard-content{margin:0 auto;max-width:1200px;padding:2rem 1rem}.loading-container{min-height:400px}.loading-spinner{border-top:3px solid var(--color-border-light);border:3px solid var(--color-border-light);height:4rem;width:4rem}.live-status-section{background:var(--color-background);border-radius:.75rem;box-shadow:0 4px 6px var(--color-shadow-light);margin-bottom:2rem;padding:1.5rem}.live-status-section h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.status-info{display:flex;flex-direction:column;gap:.5rem}.status-info p{color:var(--color-text-secondary);font-size:.875rem;margin:0}.status-indicator{font-size:1.2rem}.test-summary-section{margin-bottom:2rem}.test-summary-header{align-items:center;display:flex;justify-content:between;margin-bottom:1.5rem}.test-summary-header h2{color:var(--color-text-primary);font-size:1.75rem;font-weight:600;margin:0}.summary-timestamp{color:var(--color-text-secondary);font-size:.875rem}.services-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.service-card{background:var(--color-background);border:2px solid #0000;border-radius:.75rem;box-shadow:0 4px 6px var(--color-shadow-light);cursor:pointer;padding:1.5rem;transition:all .3s ease}.service-card:hover{border-color:var(--color-primary);box-shadow:0 8px 15px var(--color-shadow-medium);transform:translateY(-2px)}.service-card.selected{background:var(--color-primary-light);border-color:var(--color-primary)}.service-header{align-items:center;display:flex;justify-content:between;margin-bottom:1rem}.service-name{color:var(--color-text-primary);font-size:1.25rem;font-weight:600}.status-dot{border-radius:50%;flex-shrink:0;height:1rem;width:1rem}.status-completed{background-color:var(--color-success)}.status-failed{background-color:var(--color-error)}.status-running{animation:pulse 2s infinite;background-color:var(--color-warning)}.status-unknown{background-color:var(--color-text-secondary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.service-stats{display:flex;flex-direction:column;gap:.75rem}.stat-row{align-items:center;display:flex;justify-content:between}.stat-label{color:var(--color-text-secondary);font-size:.875rem}.stat-value{color:var(--color-text-primary);font-weight:600}.coverage-info{background:var(--color-background-secondary);border-radius:.5rem;margin-top:1rem;padding:1rem}.coverage-title{color:var(--color-text-primary);font-size:.875rem;font-weight:600;margin-bottom:.5rem}.coverage-grid{grid-gap:.5rem;color:var(--color-text-secondary);display:grid;font-size:.75rem;gap:.5rem;grid-template-columns:1fr 1fr}.service-details-section{background:var(--color-background);border-radius:.75rem;box-shadow:0 4px 6px var(--color-shadow-light);margin-bottom:2rem;padding:1.5rem}.details-header{align-items:center;display:flex;justify-content:between;margin-bottom:1.5rem}.details-title{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.coverage-button{background:var(--color-success);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem;transition:all .3s ease}.coverage-button:hover{background:var(--color-success);opacity:.9;transform:translateY(-1px)}.files-list-title{color:var(--color-text-primary);font-size:1.125rem;font-weight:600;margin-bottom:1rem}.files-list{display:flex;flex-direction:column;gap:.5rem}.file-item{align-items:center;border:1px solid var(--color-border);border-radius:.5rem;cursor:pointer;display:flex;justify-content:between;padding:.75rem;transition:all .3s ease}.file-item:hover{background:var(--color-background-secondary);border-color:var(--color-border-focus)}.file-meta{display:flex;font-size:.875rem;gap:1rem}.coverage-section,.file-content-section{background:var(--color-background);border-radius:.75rem;box-shadow:0 4px 6px var(--color-shadow-light);margin-bottom:2rem;padding:1.5rem}.coverage-title-main,.file-content-title{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin-bottom:1.5rem}.file-content-display{background:var(--color-text-primary);border-radius:.5rem;color:var(--color-background);font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.875rem;line-height:1.6;max-height:600px;overflow-x:auto;overflow-y:auto;padding:1.5rem}.coverage-content{border:1px solid var(--color-border);border-radius:.5rem;overflow:hidden}.coverage-content iframe{border:none;min-height:600px;width:100%}@media (max-width:768px){.test-dashboard-header h1{font-size:2rem}.header-controls{align-items:flex-start;flex-direction:column;gap:.5rem}.services-grid{grid-template-columns:1fr}.details-header{gap:1rem}.details-header,.file-item{align-items:flex-start;flex-direction:column}.file-item,.file-meta{gap:.5rem}}.admin-employees-page{background-color:var(--color-background-page);margin:0;min-height:100vh;padding:0}.alert{border-radius:.375rem;font-weight:500;margin:20px 30px;padding:1rem}.alert-error{background-color:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error)}.alert-success{background-color:var(--color-success-light);border:1px solid var(--color-success);color:var(--color-success)}.employees-table-container{background:var(--color-background);border:1px solid var(--color-border);border-radius:.5rem;box-shadow:0 2px 4px var(--color-shadow-light);margin:20px 30px;overflow:hidden}.employees-table{border-collapse:collapse;font-size:.875rem;width:100%}.employees-table th{background-color:var(--color-background-secondary);border-bottom:2px solid var(--color-border);font-weight:600;text-align:left}.employees-table td,.employees-table th{color:var(--color-text-primary);padding:1rem .75rem}.employees-table td{border-bottom:1px solid var(--color-border);vertical-align:top}.employees-table tr.inactive{opacity:.7}.employees-table tr.inactive,.employees-table tr:hover{background-color:var(--color-background-secondary)}.employee-name strong{color:var(--color-text-primary);display:block;margin-bottom:.25rem}.employee-name small{color:var(--color-text-secondary);font-size:.75rem}.roles{display:flex;flex-wrap:wrap;gap:.25rem}.role-badge{background-color:var(--color-background-tertiary);color:var(--color-text-primary)}.role-badge,.status-badge{border-radius:.25rem;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.status-badge{text-transform:uppercase}.status-badge.active{background-color:var(--color-success-light);color:var(--color-success)}.status-badge.inactive{background-color:var(--color-error-light);color:var(--color-error)}.action-buttons{display:flex;gap:.5rem}.btn{border:none;border-radius:.375rem;cursor:pointer;display:inline-block;font-size:.875rem;font-weight:500;padding:.375rem .75rem;text-align:center;text-decoration:none;transition:all .15s ease-in-out}.btn-sm{font-size:.75rem;padding:.25rem .5rem}.btn-primary{background-color:var(--color-primary)}.btn-primary:hover{background-color:var(--color-primary-hover)}.btn-secondary{background-color:var(--color-secondary)}.btn-secondary:hover{background-color:var(--color-secondary-hover)}.btn-danger{color:#fff}.btn-danger,.btn-danger:hover{background-color:var(--color-error)}.btn-danger:hover{opacity:.9}.loading{color:var(--color-text-secondary);padding:2rem;text-align:center}.modal-overlay{background-color:#00000080;padding:1rem}.modal-content{border-radius:.5rem;box-shadow:0 10px 25px var(--color-shadow-heavy);max-height:90vh;max-width:600px;width:100%}.close-button{height:2rem;padding:0;width:2rem}.employee-form{padding:1.5rem}.form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.form-group input,.form-group select{border:1px solid var(--color-border);border-radius:.375rem;font-size:.875rem;padding:.5rem;width:100%}.form-group input:focus,.form-group select:focus{box-shadow:0 0 0 .2rem var(--color-primary-light)}.checkbox-label{margin-bottom:.5rem}.checkbox-label input[type=checkbox]{margin:0;width:auto}.roles-checkboxes{grid-gap:.5rem;background-color:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:.375rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));padding:.75rem}.modal-actions{margin-top:1.5rem}@media (max-width:768px){.admin-employees-page{padding:1rem}.employees-table-container{overflow-x:auto}.employees-table{min-width:800px}.form-row{grid-template-columns:1fr}.modal-content{margin:1rem;max-width:none}.roles-checkboxes{grid-template-columns:1fr}}.camera-capture-modal{align-items:center;background-color:#000000e6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.camera-capture-content{background:var(--background-color);border-radius:8px;box-shadow:0 4px 6px #0000004d;color:var(--text-color);display:flex;flex-direction:column;max-height:90vh;max-width:800px;overflow:hidden;width:90%}.camera-header{border-bottom:1px solid var(--border-color);padding:20px}.camera-header h3{color:var(--text-color);font-size:1.5rem}.camera-error{background-color:#fee;border:1px solid #fcc;border-radius:4px;color:#c00;margin:15px;padding:15px}.camera-viewport{align-items:center;background-color:#000;display:flex;flex:1 1;justify-content:center;min-height:400px;position:relative}.crop-frame{border:3px solid #0f0;box-shadow:0 0 0 9999px #00000080;pointer-events:none;position:absolute;z-index:10}.crop-frame:before{height:1px;left:-3px;right:-3px;top:50%}.crop-frame:after,.crop-frame:before{background:#0f0;content:"";opacity:.5;position:absolute}.crop-frame:after{bottom:-3px;left:50%;top:-3px;width:1px}.camera-video,.captured-image{max-height:60vh;max-width:100%;object-fit:contain}.camera-controls{background:var(--background-color);border-top:1px solid var(--border-color);display:flex;gap:15px;justify-content:center;padding:20px}.capture-button{font-size:1.1rem;padding:12px 30px}@media (max-width:768px){.camera-capture-content{border-radius:0;height:100vh;max-height:100vh;max-width:100%;width:100%}.camera-viewport{min-height:300px}}.create-patient-modal{background-color:var(--color-background);border-radius:12px;box-shadow:0 8px 32px var(--color-shadow-medium);margin:10px;max-height:95vh;max-width:1100px;min-height:750px;overflow-y:auto;width:95vw}.create-patient-form{padding:0 1.5rem}.form-row{grid-gap:1.2rem;gap:1.2rem;grid-template-columns:1fr 1fr;margin-bottom:1.2rem}.form-row:last-child{margin-bottom:1.5rem}.form-group{gap:.25rem}.form-group.required label:after{color:var(--color-error);content:" *"}.form-group label{font-size:.9rem}.form-group input,.form-group select{background-color:var(--color-background);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:1rem;padding:.6rem;transition:border-color .2s ease}.form-group input:focus,.form-group select:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-group input.error,.form-group select.error{border-color:var(--color-error)}.form-group input:disabled,.form-group select:disabled{background-color:var(--color-background-secondary);cursor:not-allowed;opacity:.7}.error-text{color:var(--color-error);font-size:.8rem;margin-top:.25rem}.uid-input-group{align-items:stretch;display:flex;gap:.5rem}.uid-input-group input{flex:1 1;font-family:monospace;letter-spacing:1px;min-width:180px}.regenerate-uid-button{align-items:center;background-color:var(--color-background-secondary);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:1rem;justify-content:center;min-width:50px;padding:.75rem;transition:all .2s ease}.regenerate-uid-button:hover:not(:disabled){background-color:var(--color-background-tertiary);border-color:var(--color-border-focus)}.regenerate-uid-button:disabled{cursor:not-allowed;opacity:.6}.modal-header{background-color:var(--color-background);border-bottom:1px solid var(--color-border);justify-content:center;margin:-1.5rem -1.5rem 1.2rem;padding:1.5rem;position:relative}.modal-header h2{flex:1 1;text-align:center}.close-button{align-items:center;border-radius:50%;display:flex;font-size:1.5rem;height:30px;justify-content:center;padding:.25rem;position:absolute;right:1.5rem;top:50%;transform:translateY(-50%);width:30px}.close-button:hover:not(:disabled){background-color:var(--color-background-secondary);color:var(--color-text-primary)}.close-button:disabled{cursor:not-allowed;opacity:.5}.error-message{background-color:var(--color-error-light);padding:.75rem 1rem}.modal-actions{background-color:var(--color-background);margin:0 -1.5rem -1.5rem;padding:1.5rem}.button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:500;min-width:120px;padding:.75rem 1.5rem;transition:all .2s ease}.button:disabled{cursor:not-allowed;opacity:.6}.button.primary{background-color:var(--color-primary);color:#fff}.button.primary:hover:not(:disabled){background-color:var(--color-primary-hover)}.button.secondary{background-color:var(--color-secondary);color:var(--color-text-primary)}.button.secondary:hover:not(:disabled){background-color:var(--color-secondary-hover)}.photo-section{grid-template-columns:1fr;margin-bottom:1.5rem}.photo-group{align-items:flex-start}.photo-preview-container{align-items:center;background-color:var(--color-background-secondary);border:2px dashed var(--color-border);border-radius:8px;display:flex;flex-direction:column;gap:1rem;padding:1rem}.photo-preview{border-radius:8px;box-shadow:0 2px 8px var(--color-shadow-light);max-height:200px;max-width:200px;object-fit:cover}.button.small{font-size:.85rem;padding:.4rem .8rem}@media (max-width:768px){.create-patient-modal{margin:1rem;max-width:95%}.form-row{gap:1rem;grid-template-columns:1fr}.modal-actions{flex-direction:column-reverse}.button{width:100%}}.patients-container{background-color:var(--color-background-page);margin:0;min-height:100vh;padding:0}.add-patient-button{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff3;border:2px solid #ffffff4d;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px 24px;transition:all .3s ease}.add-patient-button:hover{background:#ffffff4d;border-color:#ffffff80;box-shadow:0 4px 15px #0003;transform:translateY(-2px)}.search-section{background-color:var(--color-background-page);display:flex;justify-content:center;padding:20px 30px;width:100%}.search-bar{max-width:650px;position:relative;width:100%}.search-input{border:none;border-radius:25px;box-shadow:0 2px 10px var(--color-shadow-light);color:var(--color-text-primary);font-size:1.1rem;padding:15px 50px 15px 20px;transition:all .3s ease}.search-input,.search-input:focus{background:var(--color-background)}.search-input:focus{box-shadow:0 4px 20px var(--color-shadow-medium);transform:scale(1.02)}.search-input::placeholder{color:var(--color-text-light)}.search-icon{color:var(--color-primary);font-size:1.2rem;position:absolute;right:15px;top:50%;transform:translateY(-50%)}.patients-content{margin:0 auto;max-width:1200px}.error-message{padding:15px;text-align:center}.loading-container{flex-direction:column;padding:60px 20px}.loading-spinner{border-top:4px solid var(--color-border-light);border:4px solid var(--color-border-light);border-top-color:var(--color-primary);margin-bottom:15px}.loading-spinner.small{border-width:3px;height:30px;width:30px}.patients-stats{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;box-shadow:0 2px 4px var(--color-shadow-light);margin-bottom:20px;padding:15px 20px}.total-count{color:var(--color-text-secondary);font-weight:500}.patients-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.patient-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);cursor:pointer;padding:20px;transition:all .3s ease}.patient-card:hover{border-color:var(--color-primary);box-shadow:0 8px 25px var(--color-shadow-medium);transform:translateY(-2px)}.patient-header{align-items:flex-start;border-bottom:2px solid var(--color-border-light);gap:10px;justify-content:space-between;margin-bottom:15px;min-height:100px;padding-bottom:10px}.patient-name{display:flex!important;flex-direction:column!important;flex-grow:1;font-size:1.3rem;gap:2px;line-height:1.2;margin:0;max-width:calc(100% - 80px)}.name-title-before{color:var(--color-text-secondary);font-size:.9rem;font-weight:400;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-main{color:var(--color-text-primary);display:flex;flex-direction:column;font-weight:600;gap:1px}.name-lastname{font-weight:700}.name-firstname,.name-lastname{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.name-firstname{font-weight:500}.name-title-after{color:var(--color-text-secondary);font-size:.9rem;font-weight:400;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.patient-id{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);border-radius:12px;color:#fff;font-size:.8rem;font-weight:500;padding:4px 8px}.patient-details{margin-bottom:20px}.detail-row{justify-content:space-between;margin-bottom:8px;padding:5px 0}.detail-row:last-child{margin-bottom:0}.detail-label{color:var(--color-text-secondary);flex-shrink:0;font-size:.9rem;font-weight:500;margin-right:10px}.detail-value{color:var(--color-text-primary);flex-grow:1;font-weight:400;text-align:right}.patient-actions{display:flex;gap:10px;justify-content:flex-end}.action-button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:8px 16px;transition:all .2s ease}.action-button.primary{background:linear-gradient(135deg,var(--color-primary) 0,var(--color-secondary) 100%);color:#fff}.action-button.primary:hover{background:linear-gradient(135deg,var(--color-primary-hover) 0,var(--color-secondary) 100%);box-shadow:0 4px 8px #00000026;color:#fff;transform:translateY(-1px)}.action-button.secondary{background:var(--color-background-secondary);border:1px solid var(--color-border);color:var(--color-text-secondary)}.action-button.secondary:hover{background:var(--color-background-tertiary);border-color:var(--color-border-focus)}.loading-more{align-items:center;display:flex;flex-direction:column;padding:30px}.loading-more p{color:var(--color-text-secondary);margin-top:10px}.end-message{border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-secondary);font-style:italic;padding:30px}.end-message,.no-results{background:var(--color-background);text-align:center}.no-results{border:1px solid var(--color-border);border-radius:12px;padding:60px 20px}.no-results-icon{color:var(--color-text-light);font-size:4rem;margin-bottom:20px}.no-results h3{color:var(--color-text-primary);font-size:1.5rem;margin-bottom:10px}.no-results p{color:var(--color-text-secondary);font-size:1.1rem}@media (max-width:768px){.patients-container{padding:10px}.patients-header{padding:20px}.header-top{align-items:center;flex-direction:column;gap:15px}.patients-header h1{font-size:2rem}.add-patient-button{text-align:center;width:100%}.patients-grid{gap:15px;grid-template-columns:1fr}.patient-card{padding:15px}.patient-header{align-items:flex-start;flex-direction:column;gap:10px;min-height:auto}.patient-name{max-width:100%}.patient-actions{flex-direction:column;gap:8px}.action-button{text-align:center;width:100%}.detail-row{align-items:flex-start;flex-direction:column;gap:2px}.detail-value{text-align:left}}.settings-modal{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 32px var(--color-shadow-medium);display:flex;flex-direction:column;max-height:80vh;max-width:600px;overflow:hidden;width:90%}.modal-header h3{color:var(--color-text-primary);font-size:1.4rem;font-weight:600;margin:0}.close-button{background:none;border:none;border-radius:6px;color:var(--color-text-secondary);cursor:pointer;padding:8px;transition:all .2s ease}.close-button:hover{background:var(--color-background-tertiary);color:var(--color-text-primary)}.close-button svg{fill:currentColor}.modal-content{flex:1 1;padding:25px}.settings-description{color:var(--color-text-secondary);line-height:1.5;margin-bottom:25px}.settings-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.setting-item{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;padding:15px;transition:all .2s ease}.setting-item:hover{border-color:var(--color-primary-light);transform:translateY(-1px)}.setting-label{align-items:center;color:var(--color-text-primary);cursor:pointer;display:flex;font-weight:500;padding-left:35px;position:relative}.setting-label input[type=checkbox]{cursor:pointer;height:0;opacity:0;position:absolute;width:0}.checkmark{background-color:var(--color-background);border:2px solid var(--color-border);border-radius:4px;height:20px;left:0;position:absolute;top:50%;transform:translateY(-50%);transition:all .2s ease;width:20px}.setting-label:hover input~.checkmark{border-color:var(--color-primary)}.setting-label input:checked~.checkmark{background-color:var(--color-primary);border-color:var(--color-primary)}.checkmark:after{content:"";display:none;position:absolute}.setting-label input:checked~.checkmark:after{display:block}.setting-label .checkmark:after{border:solid #fff;border-width:0 2px 2px 0;height:10px;left:6px;top:2px;transform:rotate(45deg);width:6px}.modal-footer{background:var(--color-background-secondary);border-top:2px solid var(--color-border);gap:15px;padding:20px 25px}.cancel-button,.save-button{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:100px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.cancel-button{background:var(--color-background);border:2px solid var(--color-border)}.cancel-button:hover{background:var(--color-background-secondary);box-shadow:0 4px 15px var(--color-shadow-light);color:var(--color-primary);transform:translateY(-2px)}.save-button{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary))}.save-button:hover{box-shadow:0 8px 25px var(--color-shadow-medium);filter:brightness(1.1);transform:translateY(-2px)}@media (max-width:768px){.settings-modal{margin:10px;width:95%}.settings-grid{grid-template-columns:1fr}.modal-content,.modal-footer,.modal-header{padding:15px 20px}}.searchable-multi-select{margin-bottom:1rem;position:relative}.multi-select-label{color:#2d3748;color:var(--color-text-primary,#2d3748);display:block;font-weight:500;margin-bottom:.5rem}.selected-items{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.selected-item{align-items:center;background-color:#e3f2fd;background-color:var(--color-primary-light,#e3f2fd);border:1px solid #667eea;border:1px solid var(--color-primary,#667eea);border-radius:4px;display:flex;font-size:.9rem;gap:.5rem;padding:.4rem .6rem}.remove-selected,.selected-item span{color:#667eea;color:var(--color-primary,#667eea)}.remove-selected{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:1.2rem;height:20px;justify-content:center;line-height:1;padding:0;transition:color .2s;width:20px}.remove-selected:hover{color:#e53e3e;color:var(--color-error,#e53e3e)}.search-container{margin-bottom:.5rem;position:relative}.search-input{background-color:#fff;background-color:var(--color-background,#fff);border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:4px;color:#2d3748;color:var(--color-text-primary,#2d3748);font-size:1rem;padding:.6rem 2.5rem .6rem .6rem;transition:border-color .2s;width:100%}.search-input:focus{border-color:#667eea;border-color:var(--color-primary,#667eea);outline:none}.clear-search{align-items:center;background:none;border:none;color:#718096;color:var(--color-text-secondary,#718096);cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;line-height:1;padding:0;position:absolute;right:.5rem;top:50%;transform:translateY(-50%);transition:color .2s;width:24px}.clear-search:hover{color:#2d3748;color:var(--color-text-primary,#2d3748)}.dropdown-menu{background-color:#fff;background-color:var(--color-background,#fff);border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:4px;box-shadow:0 4px 6px #00000026;box-shadow:0 4px 6px var(--color-shadow-heavy,#00000026);left:0;margin-top:.25rem;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.dropdown-menu:before{display:none}.dropdown-item{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--color-border,#e2e8f0);cursor:pointer;display:flex;gap:.75rem;padding:.75rem;transition:background-color .2s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background-color:#f7fafc;background-color:var(--color-background-secondary,#f7fafc)}.dropdown-item input[type=checkbox]{cursor:pointer;height:18px;margin:0;width:18px}.dropdown-item span{color:#2d3748;color:var(--color-text-primary,#2d3748);flex:1 1}.add-new-button{background-color:#667eea;background-color:var(--color-primary,#667eea);border:none;border-top:1px solid #e2e8f0;border-top:1px solid var(--color-border,#e2e8f0);color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem;text-align:left;transition:background-color .2s;width:100%}.add-new-button:hover{background-color:#764ba2;background-color:var(--color-primary-hover,#764ba2)}.form-help-text{color:#718096;color:var(--color-text-secondary,#718096);margin-bottom:.75rem;margin-top:0}.add-event-modal{max-height:90vh;max-width:800px;overflow-y:auto}.event-form{padding:0}.form-section{border-bottom:1px solid var(--color-border);margin-bottom:2rem;padding-bottom:1.5rem}.form-section:last-of-type{border-bottom:none;margin-bottom:1rem}.form-section h3{margin:0 0 1rem}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem}.optional-hint{color:var(--color-text-secondary);font-size:.85rem;font-style:italic;font-weight:400}.form-group input,.form-group select,.form-group textarea{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.form-group textarea{min-height:80px}.checkbox-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:.5rem}.checkbox-item{align-items:center;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:4px;cursor:pointer;display:flex;padding:.5rem;transition:all .2s ease}.checkbox-item:hover{background-color:var(--color-background-secondary);border-color:var(--color-primary)}.checkbox-item input[type=checkbox],.checkbox-item input[type=radio]{margin-bottom:0;margin-right:.5rem;width:auto}.checkbox-item span{color:var(--color-text-primary);font-size:.9rem}.pregnancy-section{background-color:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:4px;padding:1rem}.pregnancy-result{border-top:1px solid var(--color-border);margin-top:1rem;padding-top:1rem}.pregnancy-result label{color:var(--color-text-primary);font-weight:500;margin-bottom:.5rem}.radio-group{display:flex;gap:1rem}.radio-item{align-items:center;cursor:pointer;display:flex}.radio-item input[type=radio]{margin-bottom:0;margin-right:.5rem;width:auto}.modal-actions{border-top:1px solid var(--color-border);display:flex;gap:1rem;justify-content:flex-end;margin-top:1rem;padding-top:1.5rem}.cancel-button{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .2s ease}.cancel-button:hover{background-color:var(--color-background-secondary);border-color:var(--color-primary)}.save-button{background-color:var(--color-primary);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:background-color .2s ease}.save-button:hover:not(:disabled){background-color:var(--color-primary-hover)}.save-button:disabled{background-color:#ccc;cursor:not-allowed}.loading-container{padding:2rem}.drug-selection{display:flex;flex-direction:column;gap:1rem}.drug-item{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:6px;padding:1rem;transition:all .2s ease}.drug-item:has(input:checked){background-color:var(--color-primary-light);border-color:var(--color-primary)}.drug-checkbox{margin-bottom:0;padding:0}.drug-checkbox,.drug-checkbox:hover{background:#0000;border:none}.drug-name{color:var(--color-text-primary);font-size:1rem;font-weight:500}.drug-categories{background-color:var(--color-background);border-radius:4px;border-top:1px solid var(--color-border);margin-top:1rem;padding:1rem}.category-label{color:var(--color-text-secondary);font-size:.85rem;font-weight:500;margin-bottom:.75rem}.category-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.category-checkbox{background-color:var(--color-background);border:1px solid var(--color-border);font-size:.85rem;padding:.4rem .6rem}.drug-categories-section{background-color:#f7fafc;background-color:var(--color-background-secondary,#f7fafc);border:1px solid #e2e8f0;border:1px solid var(--color-border,#e2e8f0);border-radius:4px;margin-top:1.5rem;padding:1rem}.category-section-label{color:#2d3748;color:var(--color-text-primary,#2d3748);font-size:.95rem;font-weight:600;margin-bottom:1rem}.drug-category-item{margin-bottom:1.5rem}.drug-category-item:last-child{margin-bottom:0}.drug-category-title{background-color:#edf2f7;background-color:var(--color-background-tertiary,#edf2f7);border-left:3px solid #667eea;border-left:3px solid var(--color-primary,#667eea);border-radius:2px;color:#2d3748;color:var(--color-text-primary,#2d3748);font-size:.9rem;font-weight:500;margin-bottom:.75rem;padding:.5rem .75rem}.category-checkbox:hover{background-color:var(--color-background-secondary);border-color:var(--color-primary)}.category-checkbox input:checked+span{color:var(--color-primary);font-weight:500}.form-help-text{color:var(--color-text-secondary);font-size:.9rem;font-style:italic;margin-bottom:1rem}.examination-documents-section{background-color:var(--color-background-secondary);border:2px dashed var(--color-border);border-radius:8px;margin-top:1.5rem;padding:1.25rem;transition:border-color .2s ease}.examination-documents-section:hover{border-color:var(--color-primary)}.examination-documents-title{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin:0 0 .5rem;text-align:center}.examination-documents-help{color:var(--color-text-secondary);font-size:.875rem;margin:0 0 1rem;text-align:center}.examination-upload-actions{display:flex;gap:1rem;justify-content:center;margin-bottom:1rem}.examination-upload-button{align-items:center;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;font-weight:500;gap:.5rem;min-width:140px;padding:1.25rem 2rem;transition:all .2s ease}.examination-upload-button:hover{background-color:var(--color-primary-light);border-color:var(--color-primary);box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.examination-upload-button:active{transform:translateY(0)}.examination-upload-button .upload-icon{fill:var(--color-primary);transition:fill .2s ease}.examination-upload-button:hover .upload-icon{fill:var(--color-primary-hover)}.examination-upload-button span{font-size:.875rem}.examination-upload-error{background-color:#dc35451a;border-radius:4px;color:#dc3545;font-size:.875rem;margin:.75rem 0;padding:.75rem;text-align:center}.selected-examination-files{border-top:1px solid var(--color-border);margin-top:1.25rem;padding-top:1.25rem}.selected-files-title{color:var(--color-text-primary);font-size:.9rem;font-weight:600;margin:0 0 .75rem}.selected-files-list{display:flex;flex-direction:column;gap:.5rem}.selected-examination-file-item{align-items:center;background-color:var(--color-background);border:1px solid var(--color-border);border-radius:6px;display:flex;gap:.75rem;padding:.75rem;transition:all .2s ease}.selected-examination-file-item:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000000d}.file-icon-container{align-items:center;background-color:var(--color-primary-light);border-radius:6px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.file-icon{fill:var(--color-primary)}.file-name{color:var(--color-text-primary);font-size:.9rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-meta{color:var(--color-text-secondary);font-size:.8rem;margin-top:.25rem}.file-remove-button{align-items:center;background-color:initial;border:none;border-radius:50%;cursor:pointer;display:flex;flex-shrink:0;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.file-remove-button:hover{background-color:#dc35451a}.file-remove-button svg{fill:#dc3545}@media (max-width:768px){.add-event-modal{margin:1rem;max-width:95vw}.checkbox-grid{grid-template-columns:1fr}.radio-group{flex-direction:column;gap:.5rem}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.events-list{gap:.5rem}.event-item{align-items:center;background-color:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:4px;justify-content:space-between;padding:.75rem}.event-item span{color:var(--color-text-primary);flex:1 1;font-size:.9rem}.remove-button{align-items:center;background:none;border:none;border-radius:50%;color:#dc3545;cursor:pointer;display:flex;font-size:1.5rem;height:24px;justify-content:center;line-height:1;padding:0;transition:background-color .2s;width:24px}.remove-button:hover{background-color:#dc35451a}.add-to-group-button{background-color:#6c757d;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1rem;padding:.5rem 1rem;transition:background-color .2s}.add-to-group-button:hover:not(:disabled){background-color:#5a6268}.add-to-group-button:disabled{cursor:not-allowed;opacity:.5}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 8px 32px var(--color-shadow-medium);max-height:80vh;overflow-y:auto;width:90%}.modal-content,.modal-content.intake-form-modal{max-width:900px}.modal-header{align-items:center;background:var(--color-background-secondary);border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;padding:20px 25px;position:sticky;top:0;z-index:10}.modal-header h2{color:var(--color-text-primary);font-size:1.5rem;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.modal-close:hover{background:var(--color-background-tertiary);color:var(--color-text-primary)}.modal-form{gap:1.5rem;padding:25px}.form-section,.modal-form{display:flex;flex-direction:column}.form-section{gap:1rem}.form-section h3{border-bottom:2px solid var(--color-primary);color:var(--color-text-primary);font-size:1.1rem;font-weight:600;margin:0 0 .5rem;padding-bottom:.5rem}.form-row{grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{color:var(--color-text-primary);font-size:.95rem;font-weight:500}.form-group input,.form-group textarea{background-color:var(--color-background);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);font-family:inherit;font-size:1rem;padding:10px 12px;transition:all .2s ease}.form-group input:focus,.form-group textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);outline:none}.form-group input:disabled,.form-group textarea:disabled{background-color:var(--color-background-secondary);cursor:not-allowed;opacity:.7}.form-group textarea{min-height:100px;resize:vertical}.checkbox-grid{grid-gap:1rem;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.checkbox-grid label{align-items:center;border-radius:4px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:.95rem;gap:.5rem;padding:.5rem;transition:background .2s ease}.checkbox-grid label:hover{background:var(--color-background)}.checkbox-grid input[type=checkbox]{cursor:pointer;height:18px;width:18px}.checkbox-grid input[type=checkbox]:disabled{cursor:not-allowed;opacity:.6}.error-message{background-color:#fee;border-left:4px solid #c33;border-radius:6px;color:#c33;font-size:.9rem;margin-bottom:0;padding:12px}.modal-footer{border-top:1px solid var(--color-border);display:flex;gap:12px;justify-content:flex-end;margin-top:10px;padding-top:20px}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:.95rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.btn-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 4px 12px var(--color-shadow-light);transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.5}.btn-secondary{background:var(--color-background);border:1px solid var(--color-border);color:var(--color-text-primary)}.btn-secondary:hover:not(:disabled){background:var(--color-background-secondary);border-color:var(--color-primary)}.btn-secondary:disabled{cursor:not-allowed;opacity:.5}@media (max-width:900px){.modal-content{max-width:95%}.form-row{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr))}}@media (max-width:600px){.modal-content{max-height:90vh;width:95%}.modal-header{padding:16px 20px}.modal-form{gap:1rem;padding:20px}.form-section{padding:1rem}.modal-footer{flex-direction:column-reverse}.btn-primary,.btn-secondary{width:100%}.checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr))}}.document-upload-overlay{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.document-upload-modal{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:16px;box-shadow:0 20px 60px #0006;display:flex;flex-direction:column;max-height:90vh;max-width:600px;overflow:hidden;width:90%}.document-upload-modal .modal-header{align-items:center;border-bottom:1px solid var(--color-border-light);display:flex;flex-shrink:0;justify-content:space-between;padding:24px 28px 16px}.document-upload-modal .modal-header h2{color:var(--color-text-primary);font-size:1.25rem;font-weight:600;margin:0}.document-upload-modal .close-button{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s}.document-upload-modal .close-button:hover{background-color:var(--color-error);border-color:var(--color-error)}.document-upload-modal .close-button:hover svg{fill:#fff}.document-upload-modal .close-button svg{fill:var(--color-text-secondary);transition:fill .2s}.document-upload-modal .modal-content{flex:1 1;overflow-y:auto;padding:24px 28px 28px}.error-message{align-items:center;background-color:#f443361a;border-radius:8px;display:flex;gap:12px;margin-bottom:20px;padding:14px 18px}.error-message svg{fill:var(--color-error);flex-shrink:0}.upload-options{display:flex;flex-direction:column;gap:24px}.upload-option-description{text-align:center}.upload-option-description p{color:var(--color-text-secondary);line-height:1.6;margin:0}.file-limits{color:var(--color-text-tertiary);font-size:.875rem;margin-top:8px}.upload-buttons{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.upload-option-button{align-items:center;background:var(--color-background-secondary);border:2px solid var(--color-border-light);border-radius:12px;color:var(--color-text-primary);cursor:pointer;display:flex;flex-direction:column;font-size:1rem;gap:12px;padding:32px 20px;transition:all .3s ease}.upload-option-button:hover{background:var(--color-background-hover);border-color:var(--color-primary);box-shadow:var(--color-shadow-medium);transform:translateY(-4px)}.upload-option-button svg{fill:var(--color-primary)}.upload-option-button span{font-weight:600}.file-preview{display:flex;flex-direction:column;gap:24px}.file-info{background:var(--color-background-secondary);border:2px solid var(--color-border-light);border-radius:12px;display:flex;gap:16px;padding:20px}.pdf-icon{fill:var(--color-primary);flex-shrink:0}.file-details{flex:1 1;min-width:0}.file-details h3{color:var(--color-text-primary);font-size:1.1rem;font-weight:600;margin:0 0 8px;word-break:break-word}.file-details p{color:var(--color-text-secondary);font-size:.9rem;margin:4px 0}.upload-method{color:var(--color-text-tertiary);font-style:italic}.preview-actions{border-top:1px solid var(--color-border-light);display:flex;gap:12px;justify-content:flex-end;padding-top:8px}.button-primary,.button-secondary{border:none;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;padding:12px 28px;transition:all .3s ease}.button-primary{background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));box-shadow:var(--color-shadow-light);color:#fff}.button-primary:hover{box-shadow:var(--color-shadow-medium);filter:brightness(1.1);transform:translateY(-2px)}.button-secondary{background:var(--color-background-secondary);border:2px solid var(--color-border-light);color:var(--color-text-primary)}.button-secondary:hover{background:var(--color-background-hover);border-color:var(--color-primary);transform:translateY(-2px)}@media (max-width:640px){.upload-buttons{grid-template-columns:1fr}.document-upload-modal{width:95%}.preview-actions{flex-direction:column-reverse}.button-primary,.button-secondary{width:100%}}.patient-detail-page{background-color:var(--background-color);min-height:100vh}.patient-detail-content{display:flex;flex-direction:column;gap:2rem;margin:0 auto;max-width:1200px;padding:2rem}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:4rem;text-align:center}.loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--border-color);border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:50px;margin-bottom:1rem;width:50px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.error-message{color:var(--error-color);font-size:1.1rem}.back-button{align-items:center;background:var(--color-background);border:2px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.back-button:hover{background:var(--color-background-secondary);border-color:var(--color-primary);box-shadow:0 4px 15px var(--color-shadow-light);color:var(--color-primary);transform:translateY(-2px)}.patient-info-card{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--shadow);padding:2rem}.patient-header{display:flex;gap:2rem;margin-bottom:2rem}.patient-photo-placeholder{align-items:center;background-color:var(--muted-color);border-radius:50%;display:flex;justify-content:center}.patient-photo-container,.patient-photo-placeholder{flex-shrink:0;height:120px;position:relative;width:120px}.photo-button{align-items:center;background:var(--color-primary);border:2px solid var(--color-background);border-radius:50%;bottom:-5px;box-shadow:0 2px 6px #0000004d;color:#fff;cursor:pointer;display:flex;height:40px;justify-content:center;position:absolute;right:-5px;transition:all .2s;width:40px;z-index:10}.photo-button:hover{background:var(--color-primary-hover);transform:scale(1.1)}.patient-photo{border-radius:50%;height:100%;object-fit:cover;width:100%}.photo-icon{fill:var(--text-muted-color);height:60px;width:60px}.patient-basic-info{flex:1 1}.patient-name{color:var(--text-color);font-size:2rem;font-weight:600;margin-bottom:1rem}.patient-name .title{color:var(--text-muted-color);font-weight:400}.patient-details{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.detail-row{align-items:center;display:flex;gap:.5rem}.detail-row .label{color:var(--text-muted-color);font-weight:500;min-width:120px}.detail-row .value{color:var(--text-color)}.detail-row .value.status{border-radius:var(--border-radius);font-size:.9rem;font-weight:500;padding:.25rem .5rem}.detail-row .value.status.alive{background-color:var(--success-color);color:#fff}.detail-row .value.status.deceased{background-color:var(--error-color);color:#fff}.patient-comment-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);padding:0;transition:all .3s ease}.patient-comment-section:hover{border-color:var(--color-primary-light);box-shadow:0 6px 20px var(--color-shadow-medium);transform:translateY(-2px)}.comment-header{align-items:center;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;padding:25px 25px 20px}.comment-header h3{color:var(--color-text-primary);font-size:1.4rem;margin:0}.comment-display,.comment-edit{padding:25px}.edit-comment-btn{background:#0000;border:none;border-radius:4px;color:var(--color-primary);cursor:pointer;padding:.5rem;transition:background .2s}.edit-comment-btn:hover{background:var(--color-primary-light)}.comment-textarea{background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-family:inherit;font-size:1rem;min-height:150px;padding:.75rem;resize:vertical;width:100%}.comment-textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}.comment-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:.75rem}.comment-actions .btn-cancel,.comment-actions .btn-save{border:none;border-radius:4px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.5rem 1.5rem;transition:all .2s}.comment-actions .btn-cancel{background:var(--color-secondary);color:var(--color-text-primary)}.comment-actions .btn-cancel:hover{background:var(--color-secondary-hover)}.comment-actions .btn-save{background:var(--color-success);color:#fff}.comment-actions .btn-save:hover{background:#218838;background:var(--color-success-hover,#218838)}.comment-display{background:var(--color-background-secondary);border-radius:4px;min-height:100px;padding:1rem}.comment-text{color:var(--color-text-primary);line-height:1.6;margin:0;white-space:pre-wrap}.comment-empty{color:var(--color-text-secondary);font-style:italic;margin:0}.patient-comment{border-top:1px solid var(--border-color);margin-top:2rem;padding-top:2rem}.patient-comment h3{color:var(--text-color);font-size:1.1rem;margin-bottom:.5rem}.patient-comment p{color:var(--text-muted-color);line-height:1.5}.patient-quick-preview{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);margin-top:30px;padding:25px;transition:all .3s ease}.patient-quick-preview:hover{border-color:var(--color-primary-light);box-shadow:0 6px 20px var(--color-shadow-medium)}.quick-preview-header{align-items:center;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.patient-quick-preview h3{color:var(--color-text-primary);font-size:1.4rem;font-weight:600;margin:0}.settings-button{align-items:center;background:none;border:none;border-radius:6px;color:var(--color-text-secondary);cursor:pointer;display:flex;justify-content:center;padding:8px;transition:all .2s ease}.settings-button:hover{background:var(--color-background-secondary);color:var(--color-primary);transform:rotate(45deg)}.settings-button svg{fill:currentColor}.quick-preview-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.preview-item{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;display:flex;justify-content:space-between;padding:12px 16px;transition:all .2s ease}.preview-item:hover{border-color:var(--color-primary-light);transform:translateY(-1px)}.preview-item.full-width{grid-column:1/-1}.preview-label{color:var(--color-text-primary);font-weight:500;margin-right:12px}.preview-value{border-radius:6px;font-size:14px;font-weight:600;padding:4px 12px}.preview-value.positive{background:var(--color-success);color:#fff}.preview-value.negative{background:var(--color-background-tertiary);color:var(--color-text-secondary)}.preview-value.warning{background:var(--color-warning);color:#fff}.preview-value.info{background:var(--color-primary);color:#fff}.patient-appointments-card,.patient-events-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);margin-top:30px;padding:0;transition:all .3s ease}.patient-appointments-card:hover,.patient-events-card:hover{border-color:var(--color-primary-light);box-shadow:0 6px 20px var(--color-shadow-medium);transform:translateY(-2px)}.card-header{align-items:center;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;padding:25px 25px 20px}.card-header h2{color:var(--color-text-primary);font-size:1.4rem;font-weight:600;margin:0}.add-event-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.add-event-btn:hover{box-shadow:0 8px 25px var(--color-shadow-medium);filter:brightness(1.1);transform:translateY(-2px)}.button-group{display:flex;gap:10px}.button-group .add-event-btn{min-width:140px}.add-appointment-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.add-appointment-btn:hover{box-shadow:0 8px 25px var(--color-shadow-medium);filter:brightness(1.1);transform:translateY(-2px)}.no-data{background:var(--color-background-secondary);border:1px dashed var(--color-border-light);border-radius:8px;color:var(--color-text-secondary);font-size:1.1rem;margin:20px 25px 25px;padding:40px;text-align:center}.events-list{gap:20px;padding:25px}.event-item,.events-list{display:flex;flex-direction:column}.event-item{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;padding:20px;transition:all .3s ease}.event-item:hover{border-color:var(--color-primary-light);box-shadow:0 4px 15px var(--color-shadow-light);transform:translateY(-1px)}.event-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:0}.event-toggle{background:#0000;border:none;color:var(--text-color);cursor:pointer;padding:0;text-align:left;width:100%}.event-title-wrap{align-items:center;display:flex;gap:8px}.event-chevron{color:var(--text-muted-color);transition:transform .2s ease}.event-chevron.expanded{transform:rotate(90deg)}.event-type{color:var(--text-color);font-size:1.1rem;font-weight:600;margin:0}.event-date{flex-shrink:0;margin-left:auto;padding-left:1rem}.event-date,.event-duration{color:var(--text-muted-color);font-size:.9rem}.event-duration{margin-bottom:1rem;margin-top:1rem}.event-comment{background-color:var(--muted-color);border-radius:var(--border-radius);margin-bottom:1rem;padding:1rem}.event-comment p{color:var(--text-color);line-height:1.4;margin:0;white-space:pre-wrap}.event-expanded-content{display:flex;flex-direction:column;width:100%}.event-details{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.detail-section h4{color:var(--primary-color);font-size:.9rem;font-weight:600;margin:0 0 .5rem}.detail-section ul{list-style:none;margin:0;padding:0}.detail-section li{background-color:var(--surface-color);border:1px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-color);font-size:.9rem;margin-bottom:.25rem;padding:.5rem}.examinations-full-section{display:block;margin-top:1rem;width:100%}.examinations-full-section h4{color:var(--primary-color);font-size:.9rem;font-weight:600;margin:0 0 .5rem}.examination-list{display:flex;flex-direction:row;flex-wrap:wrap;gap:6px;list-style:none;margin:0;padding:0}.examination-list-item{align-items:center;background:var(--color-background);border:1px solid var(--color-border-light);border-radius:6px;color:var(--text-color);display:flex;font-size:.9rem;gap:8px;padding:6px 10px}.examination-name{flex:1 1;font-weight:500}.examination-doc-badge{background:var(--primary-color);border-radius:10px;color:#fff;flex-shrink:0;font-size:.75rem;font-weight:600;padding:1px 7px}.no-exam-documents{color:var(--text-muted-color);font-size:.85rem;margin:0;padding:4px 0}.event-documents-section{display:block;margin-top:1rem;width:100%}.event-documents-section h4{color:var(--primary-color);font-size:.9rem;font-weight:600;margin:0 0 .5rem}.event-document-list{border:1px solid var(--color-border-light);border-radius:8px;display:flex;flex-direction:column;gap:0;list-style:none;margin:0;overflow:hidden;padding:0}.event-document-item+.event-document-item{border-top:1px solid var(--color-border-light)}.event-document-btn{grid-gap:12px;align-items:center;background:var(--color-background);border:none;color:var(--text-color);cursor:pointer;display:grid;font-size:.9rem;gap:12px;grid-template-columns:auto minmax(0,1fr) auto;padding:10px 12px;text-align:left;transition:all .2s ease;width:100%}.event-document-btn:hover{background:var(--color-background-secondary)}.event-doc-icon{color:var(--primary-color);flex-shrink:0}.event-doc-main{display:flex;flex:1 1;flex-direction:column;gap:2px;min-width:0}.event-doc-file{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-doc-exam{color:var(--text-muted-color);font-size:.8rem}.event-doc-meta{color:var(--text-muted-color);flex-shrink:0;font-size:.78rem;text-align:right}.appointments-list{display:flex;flex-direction:column;gap:15px;padding:25px}.appointment-item{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;display:flex;gap:20px;padding:20px;transition:all .3s ease}.appointment-item:hover{border-color:var(--color-primary-light);box-shadow:0 4px 15px var(--color-shadow-light);transform:translateY(-1px)}.appointment-time{flex-shrink:0;min-width:140px}.start-time{color:var(--text-color);font-size:1rem;font-weight:600}.end-time{color:var(--text-muted-color);font-size:.9rem;margin-top:.25rem}.appointment-details{flex:1 1}.doctor{color:var(--text-color);font-size:1rem;font-weight:600}.doctor,.hospital{margin-bottom:.25rem}.hospital{color:var(--text-muted-color);font-size:.9rem}.equipment{color:var(--primary-color);font-size:.9rem;font-weight:500}.patient-documents-card{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);margin-top:30px;padding:0;transition:all .3s ease}.patient-documents-card:hover{border-color:var(--color-primary-light);box-shadow:0 6px 20px var(--color-shadow-medium);transform:translateY(-2px)}.add-document-btn{align-items:center;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:120px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.add-document-btn:hover:not(:disabled){box-shadow:0 8px 25px var(--color-shadow-medium);filter:brightness(1.1);transform:translateY(-2px)}.add-document-btn:disabled{cursor:not-allowed;filter:grayscale(50%);opacity:.6;transform:none}.documents-list{display:flex;flex-direction:column;gap:15px;padding:25px}.document-item{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:12px;cursor:pointer;display:flex;gap:15px;padding:20px;transition:all .3s ease}.document-item:hover{background:var(--color-background-hover);border-color:var(--color-primary);box-shadow:var(--color-shadow-light);transform:translateX(5px)}.document-info{align-items:center;cursor:pointer;display:flex;flex:1 1;gap:15px}.document-icon{fill:var(--color-primary);flex-shrink:0}.document-details{flex:1 1;min-width:0}.document-name{color:var(--color-text-primary);font-size:1rem;font-weight:600;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-meta{color:var(--color-text-secondary);display:flex;font-size:.875rem;gap:15px}.document-date,.document-size{white-space:nowrap}.delete-document-btn{align-items:center;background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:8px;cursor:pointer;display:flex;flex-shrink:0;justify-content:center;padding:8px;transition:all .3s ease}.delete-document-btn:hover{background:var(--color-error);border-color:var(--color-error);transform:scale(1.1)}.delete-document-btn:hover svg{fill:#fff}.delete-document-btn svg{fill:var(--color-error);transition:fill .3s ease}@media (max-width:768px){.patient-detail-content{padding:1rem}.patient-header{flex-direction:column;text-align:center}.patient-details{grid-template-columns:1fr}.card-header{text-align:center}.appointment-item,.card-header{flex-direction:column;gap:1rem}.appointment-time{min-width:0;min-width:auto}.event-details{grid-template-columns:1fr}}.camera-content{border-radius:12px;padding:1.5rem}.camera-header{margin-bottom:1rem}.close-btn{align-items:center;background:#0000;border-radius:4px;display:flex;font-size:2rem;height:32px;justify-content:center;padding:0;width:32px}.camera-video{border-radius:8px;margin-bottom:1rem}.camera-actions{gap:1rem}.camera-actions .btn-cancel,.camera-actions .btn-capture{border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s}.camera-actions .btn-cancel{background:var(--color-secondary);color:var(--color-text-primary)}.camera-actions .btn-cancel:hover{background:var(--color-secondary-hover)}.camera-actions .btn-capture{background:var(--color-primary);color:#fff}.camera-actions .btn-capture:hover{background:var(--color-primary-hover)}.add-patient-page{background:var(--color-background-page);margin:0 auto;max-width:1200px;min-height:100vh;padding:2rem}.form-container{background:var(--color-background);border-radius:8px;box-shadow:0 2px 4px var(--color-shadow-light);padding:2rem}.form-container h1{border-bottom:2px solid var(--color-primary);color:var(--color-text-primary);margin-bottom:1.5rem;padding-bottom:.5rem}.error-message{background:var(--color-error-light);border:1px solid var(--color-error);border-radius:4px;color:var(--color-error);margin-bottom:1rem;padding:1rem}.patient-form{display:flex;flex-direction:column;gap:2rem}.form-section{background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:8px;padding:1.5rem}.form-section h2{color:var(--color-primary);font-size:1.3rem;margin-bottom:1rem;margin-top:0}.photo-section{gap:1.5rem}.photo-container,.photo-section{align-items:center;display:flex;flex-direction:column}.photo-container{gap:1rem;max-width:300px;width:100%}.photo-preview{border:3px solid var(--color-primary);border-radius:50%;box-shadow:0 4px 6px var(--color-shadow-light);height:200px;overflow:hidden;position:relative;width:200px}.photo-preview img{height:100%;object-fit:cover;width:100%}.remove-photo-btn{align-items:center;background:var(--color-error);border:none;border-radius:50%;box-shadow:0 2px 4px var(--color-shadow-medium);color:#fff;cursor:pointer;display:flex;font-size:24px;height:32px;justify-content:center;line-height:1;position:absolute;right:5px;top:5px;transition:background .2s;width:32px}.remove-photo-btn:hover{background:var(--color-error);opacity:.9}.photo-placeholder{align-items:center;background:var(--color-background-tertiary);border:3px dashed var(--color-border);border-radius:50%;color:var(--color-text-secondary);display:flex;height:200px;justify-content:center;width:200px}.camera-btn{background:var(--color-primary);border:none;border-radius:4px;box-shadow:0 2px 4px var(--color-shadow-light);color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem;transition:background .2s}.camera-btn:hover{background:var(--color-primary-hover)}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1rem}.form-field{display:flex;flex-direction:column}.form-field label{color:var(--color-text-primary);font-weight:600;margin-bottom:.5rem}.form-field input,.form-field select,.form-field textarea{background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-size:1rem;padding:.5rem}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light);outline:none}textarea{background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);font-family:inherit;font-size:1rem;padding:.75rem;resize:vertical;width:100%}.checkbox-grid{grid-gap:.75rem;display:grid;gap:.75rem;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));margin-top:1rem}.checkbox-label{align-items:center;border-radius:4px;cursor:pointer;display:flex;gap:.5rem;padding:.5rem;transition:background .2s}.checkbox-label:hover{background:var(--color-primary-light)}.checkbox-label input[type=checkbox]{accent-color:var(--color-primary);cursor:pointer;height:18px;width:18px}.optional-section{background:var(--color-info-light);border-color:var(--color-info)}.section-note{color:var(--color-text-secondary);font-style:italic;margin-bottom:1rem}.terms-section{background:var(--color-warning-light);border-color:var(--color-warning)}.terms-text{background:var(--color-background);border:1px solid var(--color-border);border-radius:4px;color:var(--color-text-primary);margin:1rem 0;max-height:300px;overflow-y:auto;padding:1rem}.terms-text ol{margin:0;padding-left:1.5rem}.terms-text li{line-height:1.5;margin-bottom:.75rem}.form-actions{border-top:2px solid var(--color-border);display:flex;gap:1rem;justify-content:flex-end;padding-top:1rem}.btn-cancel,.btn-submit{border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:all .2s}.btn-cancel{background:var(--color-secondary);color:var(--color-text-primary)}.btn-cancel:hover{background:var(--color-secondary-hover)}.btn-submit{background:var(--color-primary);color:#fff}.btn-submit:hover:not(:disabled){background:var(--color-primary-hover)}.btn-submit:disabled{background:var(--color-border);cursor:not-allowed;opacity:.6}.camera-modal{align-items:center;background:#000c;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.camera-content{background:var(--color-background);border-radius:8px;box-shadow:0 4px 20px #0000004d;max-width:640px;padding:20px;width:90%}.camera-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:15px}.camera-header h3{color:var(--color-text-primary);margin:0}.close-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:24px;transition:all .2s}.close-btn:hover{background:var(--color-background-secondary);border-radius:4px;color:var(--color-text-primary)}.camera-video{background:#000;border-radius:4px;margin-bottom:15px;max-height:480px;width:100%}.camera-actions{display:flex;gap:10px;justify-content:flex-end}.btn-capture{background:var(--color-success);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px;transition:background .2s}.btn-capture:hover{background:#218838;background:var(--color-success-hover,#218838)}.reservations-container{background-color:var(--color-background-page);margin:0;min-height:100vh;padding:0}.reservations-content{margin:0 auto;max-width:1400px;padding:40px 30px}.admin-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);margin-bottom:40px;padding:24px}.admin-section h2{border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-size:1.5rem;margin-bottom:24px;padding-bottom:12px}.doctor-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);margin-bottom:40px;padding:24px}.doctor-section h2{border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-size:1.5rem;margin-bottom:24px;padding-bottom:12px}.admin-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.admin-card{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:12px;padding:20px;transition:transform .2s ease,box-shadow .2s ease}.admin-card:hover{box-shadow:0 8px 25px var(--color-shadow-medium);transform:translateY(-2px)}.admin-card h3{border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);font-size:1.1rem;margin-bottom:16px;padding-bottom:8px}.calendar-section{background:var(--color-background);border:1px solid var(--color-border);border-radius:12px;box-shadow:0 4px 6px var(--color-shadow-light);padding:24px}.calendar-section h2{border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-size:1.5rem;margin-bottom:24px;padding-bottom:12px}.calendar-layout{grid-gap:24px;display:grid;gap:24px;grid-template-columns:350px 1fr;margin-bottom:24px}@media (max-width:1024px){.calendar-layout{grid-template-columns:1fr}}.calendar-filters{gap:16px}.calendar-filters,.form-row{display:flex;flex-direction:column}.form-row{gap:8px}.form-row label{color:var(--color-text-primary);font-size:.9rem;font-weight:500}.form-row input,.form-row select,.form-row textarea{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:1rem;padding:10px 12px;transition:all .2s ease}.form-row input:focus,.form-row select:focus,.form-row textarea:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1);outline:none}.form-row textarea{font-family:inherit;min-height:80px;resize:vertical}.form-row button{background:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);cursor:pointer;font-size:.95rem;padding:10px 16px;transition:all .2s ease}.form-row button:hover{background:var(--color-background);border-color:var(--color-primary)}.form-row button:disabled{cursor:not-allowed;opacity:.6}.primary{background:var(--color-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:10px 20px;transition:all .2s ease}.primary:hover{background:var(--color-primary-dark);box-shadow:0 4px 12px rgba(var(--color-primary-rgb),.3);transform:translateY(-1px)}.primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.list{display:flex;flex-direction:column;gap:8px;margin-top:12px;max-height:200px;overflow-y:auto}.list-item{align-items:center;background:var(--color-background);border:1px solid var(--color-border-light);border-radius:8px;color:var(--color-text-primary);display:flex;font-size:.9rem;justify-content:space-between;padding:10px 12px;transition:all .2s ease}.list-item:hover{border-color:var(--color-primary);box-shadow:0 2px 8px var(--color-shadow-light)}.monthly-calendar{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:12px;padding:20px}.month-header{align-items:center;border-bottom:2px solid var(--color-border);display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.month-title{color:var(--color-text-primary);font-size:1.2rem;font-weight:600}.month-nav{display:flex;gap:8px}.nav-button{align-items:center;background:var(--color-background);border:1px solid var(--color-border);border-radius:6px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:1.1rem;height:32px;justify-content:center;transition:all .2s ease;width:32px}.nav-button:hover{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.calendar-day-header{color:var(--color-text-secondary);font-size:.85rem;font-weight:600;padding:8px 4px;text-align:center}.calendar-day{align-items:center;aspect-ratio:1;background:var(--color-background);border:1px solid var(--color-border-light);border-radius:8px;color:var(--color-text-primary);cursor:pointer;display:flex;font-size:.9rem;justify-content:center;position:relative;transition:all .2s ease}.calendar-day:hover{background:var(--color-background-hover);border-color:var(--color-primary);transform:scale(1.05)}.calendar-day.other-month{color:var(--color-text-light);opacity:.5}.calendar-day.today{background:var(--color-primary);color:#fff}.calendar-day.selected,.calendar-day.today{border-color:var(--color-primary);font-weight:600}.calendar-day.selected{background:rgba(var(--color-primary-rgb),.2);background:var(--color-primary-light,rgba(var(--color-primary-rgb),.2))}.calendar-day.has-reservations:after{background:var(--color-primary);border-radius:50%;bottom:4px;content:"";height:6px;left:50%;position:absolute;transform:translateX(-50%);width:6px}.calendar-day.selected.has-reservations:after,.calendar-day.today.has-reservations:after{background:#fff}.calendar-content{margin-top:24px}.reservations-table-container{border:1px solid var(--color-border-light);border-radius:8px;overflow-x:auto}.reservations-table-container table{background:var(--color-background);border-collapse:collapse;width:100%}.reservations-table-container th{background:var(--color-background-secondary);border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-weight:600;padding:12px 16px;text-align:left}.reservations-table-container td{border-bottom:1px solid var(--color-border-light);color:var(--color-text-primary);padding:12px 16px}.reservations-table-container tr:hover{background:var(--color-background-hover)}.reservations-table-container tr:last-child td{border-bottom:none}.reservation-form{background:var(--color-background-secondary);border:1px solid var(--color-border-light);border-radius:12px;margin-top:32px;padding:24px}.reservation-form h3{border-bottom:2px solid var(--color-border);color:var(--color-text-primary);font-size:1.2rem;margin-bottom:20px;padding-bottom:12px}.form-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:20px}.empty-state{color:var(--color-text-secondary);padding:40px 20px;text-align:center}.empty-state-icon{font-size:3rem;margin-bottom:16px;opacity:.5}.empty-state-text{font-size:1.1rem}.patient-search-container{position:relative;width:100%}.patient-search-input{background:var(--color-background);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text-primary);font-size:1rem;padding:10px 12px;transition:all .2s ease;width:100%}.patient-search-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary-rgb),.1);outline:none}.patient-search-results{background:var(--color-background);border:1px solid var(--color-border);border-radius:0 0 8px 8px;border-top:none;box-shadow:0 8px 16px var(--color-shadow-light);left:0;max-height:300px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:1000}.patient-search-result-item{border-bottom:1px solid var(--color-border-light);cursor:pointer;display:flex;flex-direction:column;gap:4px;padding:12px 16px;transition:all .2s ease}.patient-search-result-item:last-child{border-bottom:none}.patient-search-result-item:hover{background:var(--color-background-secondary)}.patient-name{color:var(--color-text-primary);font-size:.95rem;font-weight:500}.patient-uid{color:var(--color-text-secondary);font-size:.85rem}.selected-patient-info{background:var(--color-primary);border-radius:6px;color:#fff;font-size:.9rem;margin-top:8px;padding:8px 12px}:root,:root[data-theme=aurora]{--color-primary:#667eea;--color-primary-hover:#764ba2;--color-primary-light:#667eea1a;--color-accent:#667eea;--color-accent-hover:#764ba2;--color-secondary:#ecf0f1;--color-secondary-hover:#d5dbdb;--color-text-primary:#2d3748;--color-text-secondary:#718096;--color-text-light:#a0aec0;--color-background:#fff;--color-background-secondary:#f7fafc;--color-background-tertiary:#edf2f7;--color-background-page:#f7fafc;--color-border:#e2e8f0;--color-border-light:#f1f3f4;--color-border-focus:#667eea;--color-success:#38a169;--color-success-light:#f0fff4;--color-warning:#d69e2e;--color-warning-light:#fffbeb;--color-error:#e53e3e;--color-error-light:#fed7d7;--color-info:#3182ce;--color-info-light:#ebf8ff;--color-shadow-light:#0000000d;--color-shadow-medium:#0000001a;--color-shadow-heavy:#00000026}:root[data-theme=nebula-blue]{--color-primary:#4299e1;--color-primary-hover:#3182ce;--color-primary-light:#4299e11a;--color-accent:#4299e1;--color-accent-hover:#2b6cb0;--color-secondary:#ecf0f1;--color-secondary-hover:#d5dbdb;--color-text-primary:#2d3748;--color-text-secondary:#718096;--color-text-light:#a0aec0;--color-background:#fff;--color-background-secondary:#f7fafc;--color-background-tertiary:#edf2f7;--color-background-page:#f7fafc;--color-border:#e2e8f0;--color-border-light:#f1f3f4;--color-border-focus:#4299e1;--color-success:#38a169;--color-success-light:#f0fff4;--color-warning:#d69e2e;--color-warning-light:#fffbeb;--color-error:#e53e3e;--color-error-light:#fed7d7;--color-info:#3182ce;--color-info-light:#ebf8ff;--color-shadow-light:#0000000d;--color-shadow-medium:#0000001a;--color-shadow-heavy:#00000026}:root[data-theme=emerald-dawn]{--color-primary:#48bb78;--color-primary-hover:#38a169;--color-primary-light:#48bb781a;--color-accent:#48bb78;--color-accent-hover:#2f855a;--color-secondary:#ecf0f1;--color-secondary-hover:#d5dbdb;--color-text-primary:#2d3748;--color-text-secondary:#718096;--color-text-light:#a0aec0;--color-background:#fff;--color-background-secondary:#f7fafc;--color-background-tertiary:#edf2f7;--color-background-page:#f7fafc;--color-border:#e2e8f0;--color-border-light:#f1f3f4;--color-border-focus:#48bb78;--color-success:#38a169;--color-success-light:#f0fff4;--color-warning:#d69e2e;--color-warning-light:#fffbeb;--color-error:#e53e3e;--color-error-light:#fed7d7;--color-info:#3182ce;--color-info-light:#ebf8ff;--color-shadow-light:#0000000d;--color-shadow-medium:#0000001a;--color-shadow-heavy:#00000026}:root[data-theme=mystic-violet]{--color-primary:#805ad5;--color-primary-hover:#6b46c1;--color-primary-light:#805ad51a;--color-accent:#805ad5;--color-accent-hover:#553c9a;--color-secondary:#ecf0f1;--color-secondary-hover:#d5dbdb;--color-text-primary:#2d3748;--color-text-secondary:#718096;--color-text-light:#a0aec0;--color-background:#fff;--color-background-secondary:#f7fafc;--color-background-tertiary:#edf2f7;--color-background-page:#f7fafc;--color-border:#e2e8f0;--color-border-light:#f1f3f4;--color-border-focus:#805ad5;--color-success:#38a169;--color-success-light:#f0fff4;--color-warning:#d69e2e;--color-warning-light:#fffbeb;--color-error:#e53e3e;--color-error-light:#fed7d7;--color-info:#3182ce;--color-info-light:#ebf8ff;--color-shadow-light:#0000000d;--color-shadow-medium:#0000001a;--color-shadow-heavy:#00000026}:root[data-theme=obsidian]{--color-primary:#667eea;--color-primary-hover:#764ba2;--color-primary-light:#667eea33;--color-accent:#667eea;--color-accent-hover:#764ba2;--color-secondary:#374151;--color-secondary-hover:#4b5563;--color-text-primary:#f7fafc;--color-text-secondary:#cbd5e0;--color-text-light:#a0aec0;--color-background:#1a202c;--color-background-secondary:#2d3748;--color-background-tertiary:#374151;--color-background-page:#171923;--color-border:#4a5568;--color-border-light:#374151;--color-border-focus:#667eea;--color-success:#68d391;--color-success-light:#68d39133;--color-warning:#f6e05e;--color-warning-light:#f6e05e33;--color-error:#fc8181;--color-error-light:#fc818133;--color-info:#63b3ed;--color-info-light:#63b3ed33;--color-shadow-light:#0000004d;--color-shadow-medium:#0006;--color-shadow-heavy:#00000080}:root[data-theme=cyber-azure]{--color-primary:#4299e1;--color-primary-hover:#3182ce;--color-primary-light:#4299e133;--color-accent:#4299e1;--color-accent-hover:#2b6cb0;--color-secondary:#374151;--color-secondary-hover:#4b5563;--color-text-primary:#f7fafc;--color-text-secondary:#cbd5e0;--color-text-light:#a0aec0;--color-background:#1a202c;--color-background-secondary:#2d3748;--color-background-tertiary:#374151;--color-background-page:#171923;--color-border:#4a5568;--color-border-light:#374151;--color-border-focus:#4299e1;--color-success:#68d391;--color-success-light:#68d39133;--color-warning:#f6e05e;--color-warning-light:#f6e05e33;--color-error:#fc8181;--color-error-light:#fc818133;--color-info:#63b3ed;--color-info-light:#63b3ed33;--color-shadow-light:#0000004d;--color-shadow-medium:#0006;--color-shadow-heavy:#00000080}:root[data-theme=forest-shadow]{--color-primary:#48bb78;--color-primary-hover:#38a169;--color-primary-light:#48bb7833;--color-accent:#48bb78;--color-accent-hover:#2f855a;--color-secondary:#374151;--color-secondary-hover:#4b5563;--color-text-primary:#f7fafc;--color-text-secondary:#cbd5e0;--color-text-light:#a0aec0;--color-background:#1a202c;--color-background-secondary:#2d3748;--color-background-tertiary:#374151;--color-background-page:#171923;--color-border:#4a5568;--color-border-light:#374151;--color-border-focus:#48bb78;--color-success:#68d391;--color-success-light:#68d39133;--color-warning:#f6e05e;--color-warning-light:#f6e05e33;--color-error:#fc8181;--color-error-light:#fc818133;--color-info:#63b3ed;--color-info-light:#63b3ed33;--color-shadow-light:#0000004d;--color-shadow-medium:#0006;--color-shadow-heavy:#00000080}:root[data-theme=cosmic-purple]{--color-primary:#805ad5;--color-primary-hover:#6b46c1;--color-primary-light:#805ad533;--color-accent:#805ad5;--color-accent-hover:#553c9a;--color-secondary:#374151;--color-secondary-hover:#4b5563;--color-text-primary:#f7fafc;--color-text-secondary:#cbd5e0;--color-text-light:#a0aec0;--color-background:#1a202c;--color-background-secondary:#2d3748;--color-background-tertiary:#374151;--color-background-page:#171923;--color-border:#4a5568;--color-border-light:#374151;--color-border-focus:#805ad5;--color-success:#68d391;--color-success-light:#68d39133;--color-warning:#f6e05e;--color-warning-light:#f6e05e33;--color-error:#fc8181;--color-error-light:#fc818133;--color-info:#63b3ed;--color-info-light:#63b3ed33;--color-shadow-light:#0000004d;--color-shadow-medium:#0006;--color-shadow-heavy:#00000080}:root[data-theme=crimson-night]{--color-primary:#f56565;--color-primary-hover:#e53e3e;--color-primary-light:#f5656533;--color-accent:#f56565;--color-accent-hover:#c53030;--color-secondary:#374151;--color-secondary-hover:#4b5563;--color-text-primary:#f7fafc;--color-text-secondary:#cbd5e0;--color-text-light:#a0aec0;--color-background:#1a202c;--color-background-secondary:#2d3748;--color-background-tertiary:#374151;--color-background-page:#171923;--color-border:#4a5568;--color-border-light:#374151;--color-border-focus:#f56565;--color-success:#68d391;--color-success-light:#68d39133;--color-warning:#f6e05e;--color-warning-light:#f6e05e33;--color-error:#fc8181;--color-error-light:#fc818133;--color-info:#63b3ed;--color-info-light:#63b3ed33;--color-shadow-light:#0000004d;--color-shadow-medium:#0006;--color-shadow-heavy:#00000080}*{transition:background-color .3s ease,color .3s ease,border-color .3s ease,box-shadow .3s ease}button,input,select,textarea{transition:background-color .3s ease,color .3s ease,border-color .3s ease!important}.modal-overlay,[data-overlay]{background-color:#00000080!important}.modal,.modal-content,[data-modal]{background:var(--color-background)!important;color:var(--color-text-primary)!important}input:not([type=checkbox]):not([type=radio]),select,textarea{background-color:var(--color-background)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)!important}input:not([type=checkbox]):not([type=radio]):focus,select:focus,textarea:focus{border-color:var(--color-border-focus)!important;box-shadow:0 0 0 2px var(--color-primary-light)!important}.btn,button:not([class*=close]):not([class*=collapse]){transition:all .2s ease!important}.add-patient-button,.btn-primary,.login-button{background:linear-gradient(135deg,var(--color-accent) 0,var(--color-accent-hover) 100%)!important;border-color:var(--color-primary)!important;color:#fff!important}.btn-secondary{background-color:var(--color-secondary)!important;border-color:var(--color-border)!important;color:var(--color-text-primary)!important}.btn-secondary:hover{background-color:var(--color-secondary-hover)!important}.btn-danger{background-color:var(--color-error)!important;color:#fff!important}.action-card,.card,.employees-table-container,.modal-content,.patient-card,.stat-card{background:var(--color-background)!important;border-color:var(--color-border)!important;box-shadow:0 2px 8px var(--color-shadow-light)!important}h1,h2,h3,h4,h5,h6{color:var(--color-text-primary)!important}div,label,p,span{color:inherit!important}.text-muted,.text-secondary,small{color:var(--color-text-secondary)!important}table th{background-color:var(--color-background-secondary)!important}table td,table th{border-color:var(--color-border)!important;color:var(--color-text-primary)!important}table tr:hover{background-color:var(--color-background-secondary)!important}.alert-error,.status-badge.inactive{background-color:var(--color-error-light)!important;border-color:var(--color-error)!important;color:var(--color-error)!important}.alert-success,.status-badge.active{background-color:var(--color-success-light)!important;border-color:var(--color-success)!important;color:var(--color-success)!important}.border,[class*=border],hr{border-color:var(--color-border)!important}.container,.page,[class*=container],[class*=page]{background-color:var(--color-background-page)!important}.bg-white{background-color:var(--color-background)!important}.employee-card,.patients-card{background:var(--color-background)!important;border:1px solid var(--color-border)!important;box-shadow:0 2px 4px var(--color-shadow-light)!important}.employee-card:hover,.patients-card:hover{box-shadow:0 4px 12px var(--color-shadow-medium)!important}:focus{outline-color:var(--color-primary)!important}.loading,.spinner{color:var(--color-text-secondary)!important}.error,.invalid{border-color:var(--color-error)!important;color:var(--color-error)!important}.success,.valid{border-color:var(--color-success)!important;color:var(--color-success)!important}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background-page);color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.App{min-height:100vh}.loading-container{align-items:center;background-color:var(--color-background-page);display:flex;justify-content:center;min-height:100vh}.loading-spinner{color:var(--color-primary);font-size:1.2rem;font-weight:500}
/*# sourceMappingURL=main.a2575b55.css.map*/