table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden}th{background-color:#f9fafb;color:#6b7280;padding:10px 14px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;border-right:none}td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6;border-right:none;font-size:14px;color:#374151}th:last-child,td:last-child{border-right:none}tr:last-child td{border-bottom:none}tr:hover td{background-color:#f9fafb}tr:nth-child(2n){background-color:transparent}select{padding:6px 10px;border-radius:8px;border:1px solid #e5e7eb;font-size:13px;font-family:inherit;background:#f9fafb;transition:border-color .15s ease}select:focus{border-color:var(--primary-blue, #4f6ef7);outline:none}.delete-btn{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:6px 12px;cursor:pointer;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;transition:all .15s ease}.delete-btn:hover{background-color:#dc2626;color:#fff;border-color:#dc2626}.undo-container{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background-color:#111827;color:#fff;padding:12px 20px;border-radius:12px;display:flex;align-items:center;gap:12px;box-shadow:0 8px 24px #0003;font-size:14px;animation:slide-up .2s ease-out;z-index:50}@keyframes slide-up{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.undo-container button{background-color:#fff;color:#111827;border:none;padding:6px 14px;cursor:pointer;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;transition:background-color .15s ease}.undo-container button:hover{background-color:#e5e7eb}.add-btn{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);padding:9px 18px;border:none;border-radius:10px;font-weight:500;font-size:14px;cursor:pointer;font-family:inherit;margin-top:16px;transition:all .15s ease}.add-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-btn:active{transform:scale(.98)}.lightbox-overlay{position:fixed!important;top:0!important;right:0!important;bottom:0!important;left:0!important;background-color:#0006!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;display:flex!important;justify-content:center!important;align-items:center!important;z-index:1000!important}.lightbox{background-color:#fff!important;padding:28px!important;border-radius:20px!important;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014!important;max-width:480px!important;width:100%!important;display:flex!important;flex-direction:column!important;gap:14px!important;font-family:inherit!important}.lightbox h2{margin:0 0 8px!important;font-size:18px!important;font-weight:600!important;text-align:center!important;color:#111827!important}.lightbox input,.lightbox textarea{width:100%!important;padding:10px 12px!important;font-size:14px!important;border:1px solid #e5e7eb!important;border-radius:10px!important;box-sizing:border-box!important;resize:none!important;font-family:inherit!important;background:#f9fafb!important}.lightbox input:focus,.lightbox textarea:focus{border-color:var(--primary-blue, #4f6ef7)!important;background:#fff!important;outline:none!important}.info-text{font-size:14px!important;color:#6b7280!important;display:flex!important;flex-direction:column!important;gap:10px!important}.info-text label{display:flex!important;align-items:center!important;gap:8px!important}.lightbox-actions{display:flex!important;justify-content:flex-end!important;gap:8px!important;margin-top:8px!important}.lightbox-actions .save{background-color:var(--primary-blue, #4f6ef7)!important;color:var(--button-text-color, white)!important;border:none!important;padding:9px 18px!important;border-radius:10px!important;font-weight:500!important;cursor:pointer!important;font-family:inherit!important;transition:background-color .15s ease!important}.lightbox-actions .save:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.lightbox-actions .cancel{background-color:#f3f4f6!important;color:#374151!important;border:none!important;padding:9px 18px!important;border-radius:10px!important;font-weight:500!important;cursor:pointer!important;font-family:inherit!important;transition:background-color .15s ease!important}.lightbox-actions .cancel:hover{background-color:#e5e7eb!important}.lightbox-patient-add{background-color:#fff;padding:28px;border-radius:20px;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;max-width:480px;width:100%;display:flex;flex-direction:column;gap:14px;font-family:inherit}.lightbox-patient-call{background-color:#fff;padding:32px;border-radius:20px;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;max-width:560px;width:100%;display:flex;flex-direction:column;gap:16px;font-family:inherit}.lightbox-patient-call textarea{font-size:14px}.lightbox-patient-call .info-text{border-top:1px solid #e5e7eb;padding-top:12px;margin-top:4px}.lightbox-patient-call .info-section{background-color:#f9fafb;border:1px solid #e5e7eb;padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:10px}.lightbox-patient-call .info-section .info-title{font-weight:600;font-size:14px;margin-bottom:4px;color:#111827}.lightbox-patient-call .checkbox-group{display:flex;align-items:center;gap:10px;font-size:14px;color:#374151}.lightbox-patient-call .checkbox-group input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-blue, #4f6ef7)}.info-section{background-color:#f9fafb;border:1px solid #e5e7eb;padding:16px;border-radius:12px;display:flex;flex-direction:column;gap:12px}.info-title{font-weight:600;font-size:14px;color:#111827}.checkbox-row{display:flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap;margin-right:20%;gap:10px;font-size:14px;color:#374151}.checkbox-row input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-blue, #4f6ef7);cursor:pointer}.checkbox-row label{cursor:pointer;font-size:14px;color:#374151}.lightbox-actions .submit{background-color:#059669;color:#fff;border:none;padding:9px 18px;border-radius:10px;font-weight:500;cursor:pointer;font-family:inherit;transition:background-color .15s ease}.lightbox-actions .submit:hover{background-color:#047857}.lightbox-confirm{max-width:380px;background-color:#fff;padding:28px;border-radius:20px;text-align:center;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.lightbox-confirm h3{font-size:18px;margin-bottom:8px;color:#111827;font-weight:600}.lightbox-confirm p{font-size:14px;margin-bottom:20px;color:#6b7280}.page-tab-bar{display:flex;align-items:center;gap:.75rem;width:100%;padding:0;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.page-tab-bar__title{font-size:.8125rem;font-weight:600;color:#6b7280;white-space:nowrap;text-transform:uppercase;letter-spacing:.04em}.page-tab-bar__nav{display:flex;align-items:center;gap:.125rem;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:0;min-height:2.75rem}.page-tab-bar__nav .page-tab-bar__tab{display:inline-flex;align-items:center;gap:.5rem;margin:0 0 -1px;padding:.625rem .875rem;font-size:.875rem;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:0;cursor:pointer;text-decoration:none;white-space:nowrap;font-family:inherit;transition:color .15s ease;border-bottom:2px solid transparent;position:relative}.page-tab-bar__nav .page-tab-bar__tab:not(.disabled):hover{color:#111827}.page-tab-bar__nav .page-tab-bar__tab.active{color:var(--primary-blue, #4f6ef7);font-weight:600;border-bottom-color:var(--primary-blue, #4f6ef7)}.page-tab-bar__nav .page-tab-bar__tab.disabled{color:#d1d5db;cursor:not-allowed}.page-tab-bar__nav .page-tab-bar__tab svg{width:16px;height:16px;flex-shrink:0}.page-tab-bar__sep{width:1px;height:1rem;background:#e5e7eb;margin:0 .25rem;flex-shrink:0}@media(max-width:768px){.page-tab-bar{padding:0;gap:.5rem}.page-tab-bar__title{font-size:.75rem}.page-tab-bar__nav .page-tab-bar__tab{padding:.5rem .625rem;font-size:.8125rem}}.wartezimmer-container{padding:24px;max-width:900px;margin:0 auto}.upload-label{display:inline-flex;align-items:center;gap:8px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);padding:9px 18px;border-radius:10px;cursor:pointer;margin-bottom:24px;font-weight:500;font-size:14px;transition:all .15s ease}.upload-label:hover{background-color:var(--primary-blue-hover, #3b5de7)}.upload-label input{display:none}.media-preview-list{display:grid;grid-template-columns:1fr;gap:24px}.media-item{position:relative;padding:16px;background-color:#fff;border:1px solid #e5e7eb;border-radius:12px;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.media-item img,.media-item video{width:100%;max-height:240px;object-fit:contain;border-radius:8px;background-color:#f9fafb}.duration-input{margin-top:12px;display:flex;align-items:center;font-size:14px}.duration-input label{margin-right:10px;font-weight:500}.duration-input input{width:80px;padding:9px 12px;border-radius:10px;border:1px solid #e5e7eb}.remove-btn{position:absolute;top:12px;right:12px;background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca;padding:6px 12px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;transition:all .15s ease}.remove-btn:hover{background-color:#dc2626;color:#fff;border-color:#dc2626}.banner-text-section{margin-top:36px;display:flex;flex-direction:column}.banner-text-section label{font-weight:500;margin-bottom:6px}.banner-text-section textarea{resize:none;min-height:80px;padding:12px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px}.save-btn{margin-top:36px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border:none;padding:9px 18px;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease}.save-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.save-btn:active{transform:scale(.98)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.modal-box{background:#fff;padding:32px;border-radius:20px;width:320px;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;text-align:center}.modal-buttons{margin-top:24px;display:flex;justify-content:center;gap:10px}.btn-confirm{background-color:#dc2626;color:#fff;border:none;padding:9px 18px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.btn-confirm:hover{background-color:#b91c1c}.btn-cancel{background-color:#f3f4f6;color:#374151;border:none;padding:9px 18px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.modal-box img,.modal-box video{max-width:100%;max-height:300px;margin-top:12px;border-radius:10px;background-color:#f9fafb}.clickable-media{cursor:pointer;transition:transform .2s ease}.clickable-media:hover{transform:scale(1.02)}.clickable-container{cursor:pointer;transition:transform .2s ease}.clickable-container:hover{transform:scale(1.02)}.clickable-container video,.clickable-container img{pointer-events:none}.btn-lightbox-save{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border:none;padding:9px 18px;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;transition:all .15s ease}.btn-lightbox-save:hover{background-color:var(--primary-blue-hover, #3b5de7)}.banner-meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:13px;color:#6b7280}.banner-counter{font-weight:500}.chip-preview{background-color:#f3f4f6;color:#374151;padding:4px 8px;border-radius:12px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%}.banner-actions{display:flex;align-items:center;gap:12px;margin-top:12px}.hint{font-size:13px;color:#9ca3af}.hint.success{color:#059669;font-weight:500}.hint.error{color:#dc2626;font-weight:500}.note{font-size:12px;color:#6b7280;margin-top:6px}.hitpanel-config-section{margin-top:40px;padding-top:28px;border-top:1px solid #e5e7eb}.hitpanel-config-section h3{margin:0 0 12px;font-size:1rem;font-weight:600}.hitpanel-config-note{font-size:14px;line-height:1.5;color:#374151;margin-bottom:16px}.hitpanel-config-btn-generate{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #fff);border:none;padding:9px 18px;border-radius:10px;font-weight:500;cursor:pointer;font-size:14px;font-family:inherit;transition:all .15s ease}.hitpanel-config-btn-generate:hover{background-color:var(--primary-blue-hover, #3b5de7)}.hitpanel-config-generated{margin-top:20px;padding:16px;background:#f9fafb;border-radius:10px;border:1px solid #e5e7eb}.hitpanel-config-url-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:8px 0 12px}.hitpanel-config-url{word-break:break-all;font-family:ui-monospace,monospace;font-size:13px;flex:1;min-width:0}.hitpanel-config-btn-copy{background:#6b7280;color:#fff;border:none;padding:6px 12px;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;transition:all .15s ease;flex-shrink:0}.hitpanel-config-btn-copy:hover{background:#374151}.hitpanel-config-snackbar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#111827;color:#fff;padding:12px 20px;border-radius:10px;font-size:14px;z-index:1100;box-shadow:0 4px 12px #0003}.hitpanel-config-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.hitpanel-config-modal-box{background:#fff;border-radius:20px;padding:32px;max-width:420px;margin:16px;text-align:center;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.hitpanel-config-confirm-image{max-width:120px;margin:0 auto 12px;display:block}.hitpanel-config-modal-buttons{display:flex;justify-content:center;gap:10px;margin-top:24px}.hitpanel-config-btn-cancel{background:#f3f4f6;color:#374151;border:none;padding:9px 18px;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;transition:all .15s ease}.hitpanel-config-btn-cancel:hover{background:#e5e7eb}.hitpanel-config-btn-confirm{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #fff);border:none;padding:9px 18px;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;transition:all .15s ease}.hitpanel-config-btn-confirm:hover{background:var(--primary-blue-hover, #3b5de7)}.loading-bar-container{width:100%;height:4px;background:#e5e7eb;border-radius:2px;overflow:hidden}.loading-bar{height:100%;width:40%;background:var(--primary-blue, #4f6ef7);border-radius:2px;animation:loadingBarSlide 1s ease-in-out infinite}@keyframes loadingBarSlide{0%{transform:translate(-100%)}to{transform:translate(350%)}}.update-btn{padding:6px 12px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;transition:all .15s ease}.update-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-user-btn{margin-bottom:16px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;font-family:inherit;transition:all .15s ease}.add-user-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-user-btn:active{transform:scale(.98)}.user-management .modal{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;max-width:none;max-height:none;box-sizing:border-box;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:none;border-radius:0;box-shadow:none;animation:none;display:flex;flex-direction:row;align-items:center;justify-content:center;align-self:auto;justify-self:auto;z-index:2000;padding:1rem;overflow-y:auto}.user-management .modal-content{background:#fff;padding:28px;border-radius:20px;width:380px;max-width:min(420px,100%);position:relative;flex-shrink:0;margin:auto;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.user-management .modal-content label{margin-top:12px;font-size:13px;font-weight:500;color:#374151}.user-management .modal-content input,.user-management .modal-content select{padding:9px 12px;margin-top:6px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;background:#f9fafb;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.user-management .modal-content input:focus,.user-management .modal-content select:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.user-management .modal-content button:not(.btn-confirm-delete):not(.btn-cancel){margin-top:14px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.user-management .modal-content button:not(.btn-confirm-delete):not(.btn-cancel):hover{background-color:var(--primary-blue-hover, #3b5de7)}.user-table button{padding:6px 12px;font-size:13px;cursor:pointer;border:none;border-radius:8px;font-weight:500;font-family:inherit;transition:all .15s ease}.user-table .btn-password{background-color:#fef3c7;color:#92400e;border:1px solid #fde68a}.user-table .btn-password:hover{background-color:#d97706;color:#fff;border-color:#d97706}.user-table .btn-delete{background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca}.user-table .btn-delete:hover{background-color:#dc2626;color:#fff;border-color:#dc2626}.user-management .modal-content .close{position:absolute;right:16px;top:12px;font-size:20px;cursor:pointer;color:#9ca3af;background:none;border:none;padding:4px 8px;border-radius:8px;transition:all .15s ease}.user-management .modal-content .close:hover{color:#374151;background:#f3f4f6}.user-management .modal-content input[type=password]{width:100%;padding:9px 12px;margin-bottom:8px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box}.user-management .modal-content p{margin-top:10px;font-size:14px;color:#374151}.user-management .delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;box-sizing:border-box;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2100;padding:1rem}.user-management .delete-modal{background:#fff;padding:28px;border-radius:20px;text-align:center;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;min-width:min(360px,100%);max-width:100%}.user-management .delete-modal p{font-size:14px;margin-bottom:20px;color:#374151}.user-management .confirm-delete{background:#dc2626;color:#fff;padding:9px 18px;border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;margin-right:8px;transition:all .15s ease}.user-management .confirm-delete:hover{background:#b91c1c}.user-management .cancel-delete{background:#f3f4f6;color:#374151;padding:9px 18px;border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.user-management .cancel-delete:hover{background:#e5e7eb}.delete-confirm-buttons{display:flex;justify-content:center;gap:10px;margin-top:20px}.btn-confirm-delete{padding:9px 18px;background-color:#dc2626;color:#fff;border:none;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;transition:all .15s ease}.btn-confirm-delete:hover{background-color:#b91c1c}.btn-cancel{padding:9px 18px;background-color:#f3f4f6;color:#374151;border:none;border-radius:10px;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;transition:all .15s ease}.btn-cancel:hover{background-color:#e5e7eb}.password-mismatch{color:#dc2626;font-size:13px;margin-top:-4px;margin-bottom:8px}.add-user-save-btn{margin-top:14px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:10px;width:100%;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.add-user-save-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-user-save-btn:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.btn-delete:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.update-password-btn{margin-top:14px;padding:9px 18px;background-color:#d97706;color:#fff;border:none;border-radius:10px;cursor:pointer;width:100%;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.update-password-btn:hover{background-color:#b45309}.update-password-btn:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.hidden-id-column{display:none}.username-with-domain{position:relative;display:flex;align-items:center}.username-with-domain input{flex:1;padding-right:100px}.fixed-domain{position:absolute;right:12px;color:#9ca3af;pointer-events:none;font-size:14px}.clinic-mgmt-h2{margin-bottom:8px}.clinic-mgmt-desc{color:#6b7280;margin-bottom:20px;font-size:14px}.clinic-mgmt-add-btn{margin-bottom:20px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border:none;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease}.clinic-mgmt-add-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.clinic-mgmt-add-btn:active{transform:scale(.98)}.clinic-mgmt-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;margin-top:10px;border:1px solid #e5e7eb}.clinic-mgmt-table th,.clinic-mgmt-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6}.clinic-mgmt-table th{background:#f9fafb;color:#6b7280;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb}.clinic-mgmt-table td{font-size:14px;color:#374151}.clinic-mgmt-table tr:last-child td{border-bottom:none}.clinic-mgmt-table tr:hover td{background-color:#f9fafb}.clinic-mgmt-name-input{width:100%;max-width:320px;padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;font-family:inherit}.clinic-mgmt-actions{display:flex;flex-wrap:wrap;gap:8px}.clinic-mgmt-btn{padding:6px 12px;border:none;border-radius:8px;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;transition:all .15s ease}.clinic-mgmt-btn-save{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white)}.clinic-mgmt-btn-save:hover{background-color:var(--primary-blue-hover, #3b5de7)}.clinic-mgmt-btn-save:disabled{opacity:.5;cursor:not-allowed}.clinic-mgmt-btn-delete{background-color:#dc2626;color:#fff}.clinic-mgmt-btn-delete:hover{background-color:#b91c1c}.clinic-mgmt-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.clinic-mgmt-modal{background:#fff;padding:32px;border-radius:20px;max-width:440px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.clinic-mgmt-modal h3{margin-top:0;font-weight:600}.clinic-mgmt-impact-list{margin:12px 0;padding-left:20px;line-height:1.6}.clinic-mgmt-modal-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}.clinic-mgmt-modal-actions button{padding:9px 18px;border-radius:10px;border:none;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.clinic-mgmt-btn-cancel{background:#f3f4f6;color:#374151}.clinic-mgmt-btn-cancel:hover{background:#e5e7eb}.clinic-mgmt-btn-confirm-delete{background:#dc2626;color:#fff}.clinic-mgmt-btn-confirm-delete:hover{background:#b91c1c}.clinic-mgmt-success{color:#059669;margin-top:12px;font-size:14px}.clinic-mgmt-error{color:#dc2626;margin-top:12px;font-size:14px}.clinic-mgmt-label{display:block;margin-bottom:6px;font-weight:500;font-size:13px;color:#374151}.clinic-mgmt-form-input{width:100%;padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:16px;box-sizing:border-box;font-size:14px;font-family:inherit}.color-settings-container{font-family:inherit;background-color:#fff;padding:24px;border-radius:14px;max-width:480px;box-shadow:0 1px 3px #0000000a;border:1px solid #e5e7eb;margin:24px auto 0;text-align:center}.color-settings-container h2{font-size:17px;font-weight:600;margin-bottom:8px;color:#111827}.color-settings-container p{font-size:14px;margin-bottom:16px;color:#6b7280}.color-settings-container input[type=color]{width:80px;height:44px;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;background-color:transparent;margin-bottom:16px;padding:2px}.checkbox-wrapper{margin:16px 0;font-size:14px;color:#374151}.checkbox-wrapper label{cursor:pointer;display:inline-flex;align-items:center;gap:8px}.checkbox-wrapper input[type=checkbox]{margin-right:0}.color-snackbar{margin-top:16px;background-color:#059669;color:#fff;padding:10px 16px;border-radius:10px;font-weight:500;font-size:14px;text-align:center;animation:fadeInOut 3s ease forwards}@keyframes fadeInOut{0%{opacity:0;transform:translateY(8px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(8px)}}.reset-button{margin-top:24px;background-color:#f3f4f6;color:#374151;padding:9px 18px;font-weight:500;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.reset-button:hover{background-color:#fef2f2;color:#dc2626;border-color:#fecaca}.save-button{margin-top:16px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);padding:9px 18px;font-weight:500;font-size:14px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.save-button:hover:not(:disabled){background-color:var(--primary-blue-hover, #3b5de7)}.save-button:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.color-button-group{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:16px}.logo-upload-container{font-family:inherit;background-color:#fff;padding:24px;border-radius:14px;max-width:480px;margin:24px auto 0;text-align:center;box-shadow:0 1px 3px #0000000a;border:1px solid #e5e7eb;min-height:280px;display:flex;flex-direction:column;align-items:center;justify-content:center}.logo-upload-container h2{font-size:17px;font-weight:600;margin-bottom:16px;color:#111827}.logo-image,.placeholder{width:180px;height:130px;margin-bottom:16px;object-fit:contain;border-radius:12px;background-color:#f3f4f6;display:flex;align-items:center;justify-content:center;border:1px solid #e5e7eb}.placeholder{color:#9ca3af;font-size:14px}.upload-button{display:inline-flex;align-items:center;justify-content:center;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);padding:9px 18px;border-radius:10px;font-weight:500;font-size:14px;cursor:pointer;font-family:inherit;border:none;transition:all .15s ease}.upload-button:hover{background-color:var(--primary-blue-hover, #3b5de7)}.remove-button{margin-top:10px;background-color:#fef2f2;color:#dc2626;padding:9px 18px;border-radius:10px;font-weight:500;font-size:14px;border:1px solid #fecaca;cursor:pointer;font-family:inherit;transition:all .15s ease}.remove-button:hover{background-color:#dc2626;color:#fff;border-color:#dc2626}.upload-status{color:var(--primary-blue, #4f6ef7);margin-top:10px;font-size:14px}.upload-error{color:#dc2626;margin-top:10px;font-size:14px}.settings-design-layout-tabs,.settings-verwaltung-tabs{width:100%;margin-top:.5rem}.login-page{font-family:Inter,system-ui,sans-serif;background-color:#f9fafb;display:flex;justify-content:center;align-items:center;height:100vh;width:100vw;margin:0}.login-container{background-color:#fff;padding:36px 32px;border-radius:20px;box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a;width:380px;max-width:90vw;text-align:center;box-sizing:border-box;border:1px solid #e5e7eb}.login-session-expired{margin-bottom:1rem;padding:10px 14px;background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1e40af;font-size:13px;text-align:center}.login-form{display:flex;flex-direction:column;gap:14px;width:100%;text-align:left}.login-form label{font-weight:500;font-size:13px;color:#374151}.login-input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;width:100%;box-sizing:border-box;background:#f9fafb;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.login-input:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.login-input-code{width:160px;margin:8px auto 0;display:block;font-size:1.5rem;font-weight:600;letter-spacing:.4em;text-align:center;padding:12px 8px}.login-password-wrapper{position:relative;width:100%}.login-input-password{padding-right:40px}.login-password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;padding:6px;cursor:pointer;color:#9ca3af;font-size:1rem;line-height:1;transition:color .15s ease}.login-password-toggle:hover{color:#374151}.login-button{margin-top:8px;padding:11px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:10px;font-size:15px;font-weight:500;width:100%;font-family:inherit;transition:background-color .15s ease,transform .1s ease}.login-button:hover{background-color:var(--primary-blue-hover, #3b5de7)}.login-button:active{transform:scale(.98)}.login-button:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;transform:none}.login-button.light{background-color:#f3f4f6;color:#374151}.login-button.light:hover{background-color:#e5e7eb}.login-error{color:#dc2626;font-size:13px;margin-top:4px;margin-bottom:4px;text-align:center}.forgot-password-link{color:var(--primary-blue, #4f6ef7);font-size:13px;text-align:right;cursor:pointer;margin-top:-8px;text-decoration:none}.forgot-password-link:hover{text-decoration:underline}.register-link{color:var(--primary-blue, #4f6ef7);font-size:13px;text-align:center;cursor:pointer;margin-top:4px;text-decoration:none}.register-link:hover{text-decoration:underline}.password-checklist{list-style:none;padding:10px 14px;margin:4px 0 0;font-size:13px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.password-checklist li.valid{color:#059669}.password-checklist li.invalid{color:#9ca3af}.button-row{display:flex;justify-content:space-between;gap:10px;margin-top:12px}.login-heading{font-size:22px;font-weight:600;margin-bottom:8px;color:#111827;text-align:center;letter-spacing:-.02em}.login-subtext{font-size:14px;color:#6b7280;line-height:1.6;margin-bottom:24px;text-align:center}.login-page .domain-preview,.login-container .domain-preview{font-size:12px;color:#9ca3af;margin-top:-6px;margin-bottom:8px}.login-label{text-align:left;font-weight:500;font-size:13px;color:#374151;margin-top:8px}.loading-bar-container{margin-top:12px;display:flex;justify-content:center}.loading-bar{width:200px;height:4px;background-color:#e5e7eb;border-radius:4px;overflow:hidden;position:relative}.loading-bar:before{content:"";position:absolute;left:-40%;width:40%;height:100%;background-color:var(--primary-blue, #4f6ef7);animation:slide 1s infinite;border-radius:4px}@keyframes slide{0%{left:-40%}50%{left:100%}to{left:100%}}.snackbar-error{margin-top:10px;background-color:#dc2626;color:#fff;padding:10px 14px;border-radius:10px;font-size:13px;text-align:center;max-width:300px}.tooltip-icon{cursor:help;margin-left:6px;font-size:14px;color:#9ca3af}.mfa-screen{font-family:inherit;background-color:#f9fafb;display:flex;justify-content:center;align-items:center;height:92vh;width:100vw;margin:0;padding:0;box-sizing:border-box}.mfa-box{background-color:#fff;padding:28px;border-radius:20px;box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a;border:1px solid #e5e7eb;width:400px;max-width:90vw;text-align:center}.mfa-toggle-tabs{display:flex;justify-content:center;margin-bottom:20px;gap:8px}.mfa-tab{padding:8px 16px;border:1px solid #e5e7eb;border-radius:20px;background-color:#f3f4f6;cursor:pointer;font-weight:500;font-size:14px;font-family:inherit;width:120px;transition:all .15s ease;color:#374151}.mfa-tab.active{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border-color:var(--primary-blue, #4f6ef7)}.qr-box{display:flex;justify-content:center;align-items:center;margin:20px 0}.qr-box img{width:180px;height:180px;border-radius:12px}.qr-loading{color:#9ca3af;font-size:14px}.mfa-instruction{text-align:left;margin-bottom:20px;color:#374151;font-size:14px;line-height:1.6}.mfa-instruction ol{padding-left:20px}.mfa-steps li{margin-bottom:12px}.mfa-input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;width:100%;box-sizing:border-box;margin-bottom:14px;font-size:14px;background:#f9fafb;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.mfa-input:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.mfa-button{padding:11px;background-color:var(--primary-blue, #4f6ef7)!important;color:var(--button-text-color, #ffffff);border:none;border-radius:10px;font-size:15px;font-weight:500;width:100%;cursor:pointer;font-family:inherit;transition:all .15s ease}.mfa-button:hover{background-color:var(--primary-blue-hover, #3b5de7)!important}.mfa-button:active{transform:scale(.98)}.mfa-secret-key{display:block;margin:10px 0;padding:12px;font-family:JetBrains Mono,ui-monospace,monospace;font-size:14px;background-color:#f3f4f6;border-radius:10px;text-align:center;word-break:break-all;border:1px solid #e5e7eb;color:#111827;letter-spacing:.03em}.mfa-input:disabled,.mfa-button:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important;opacity:.7!important;pointer-events:none;transform:none}.mfa-email-code-row{display:flex;flex-direction:column;gap:12px}.mfa-email-code-label{display:block;font-weight:500;font-size:13px;color:#374151;margin-bottom:4px}.mfa-digit-boxes{display:flex;justify-content:center;gap:6px}.mfa-digit-box{width:40px;height:44px;padding:0;border:1px solid #e5e7eb;border-radius:10px;background-color:#f3f4f6!important;font-size:1.4rem;font-weight:600;text-align:center;box-sizing:border-box;color:#111827;font-family:inherit;transition:border-color .15s ease}.mfa-digit-box:-webkit-autofill,.mfa-digit-box:-webkit-autofill:hover,.mfa-digit-box:-webkit-autofill:focus,.mfa-digit-box:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px #f3f4f6 inset!important;box-shadow:0 0 0 30px #f3f4f6 inset!important;-webkit-text-fill-color:#111827!important}.mfa-digit-box:focus{outline:none;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent)}.mfa-otc{border:0;padding:0;margin:0 0 1em}.mfa-otc .mfa-digit-boxes{margin:0 auto}.registration-page{font-family:inherit;background-color:#f9fafb;min-height:100vh;width:100vw;display:flex;flex-direction:column;padding:16px 0;box-sizing:border-box}.registration-content{flex:1;display:flex;justify-content:center;align-items:center;overflow:hidden}.registration-container{background-color:#fff;padding:28px;border-radius:20px;box-shadow:0 4px 24px #0000000f,0 1px 4px #0000000a;border:1px solid #e5e7eb;width:380px;max-width:95vw;display:flex;flex-direction:column;gap:14px}.registration-container label{font-weight:500;font-size:13px;color:#374151}.registration-container input{padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;width:100%;box-sizing:border-box;background:#f9fafb;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.registration-container input:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.registration-container button:not(.back-button){padding:11px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border:none;cursor:pointer;border-radius:10px;font-size:15px;font-weight:500;font-family:inherit;transition:all .15s ease}.registration-container button:not(.back-button):hover{background-color:var(--primary-blue-hover, #3b5de7)}.registration-container button:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed}.registration-container .back-button{background:none;color:#6b7280;font-size:14px;text-align:left;padding:0;margin-bottom:0;cursor:pointer;border:none;font-family:inherit;transition:color .15s ease}.registration-container .back-button:hover{color:#111827;text-decoration:underline}.registration-container .error-text{color:#dc2626;font-size:13px}.registration-container .tooltip{position:relative;display:inline-block;margin-left:5px;cursor:pointer;font-weight:600}.registration-container .tooltiptext{visibility:hidden;width:220px;background-color:#111827;color:#fff;text-align:left;border-radius:10px;padding:10px 12px;position:absolute;z-index:1;bottom:125%;left:0;opacity:0;transition:opacity .15s ease;font-size:12px;box-shadow:0 4px 12px #00000026}.registration-container .tooltip:hover .tooltiptext{visibility:visible;opacity:1}.registration-container .password-checklist{list-style:none;padding:10px 14px;margin:4px 0 0;font-size:13px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.registration-container .password-checklist li.valid{color:#059669}.registration-container .password-checklist li.invalid{color:#9ca3af}.registration-container .tooltip-label{display:flex;align-items:center;gap:6px}.registration-container .tooltip-icon{display:inline-block;width:20px;height:20px;color:#9ca3af;border-radius:50%;text-align:center;font-size:12px;line-height:20px;font-weight:600;cursor:help}.registration-container .success-box{background-color:#eff6ff;border:1px solid #bfdbfe;padding:20px;margin-top:12px;border-radius:12px;text-align:center;color:#374151;font-size:14px}.registration-container .success-box p{margin-bottom:10px;line-height:1.6}.registration-container .emma-button{display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:#fff;border:none;border-radius:10px;font-weight:500;font-size:14px;text-decoration:none;font-family:inherit;transition:background-color .15s ease}.registration-container .emma-button:hover{background-color:var(--primary-blue-hover, #3b5de7)}.registration-container .domain-preview{font-size:12px;color:#9ca3af;margin-top:-6px}.username-field-unified{display:flex;align-items:center;border:1px solid #e5e7eb;border-radius:10px;background-color:#f9fafb;padding:0;box-sizing:border-box;transition:border-color .15s ease}.username-field-unified:focus-within{border-color:var(--primary-blue, #4f6ef7);background:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent)}.username-field-unified input{flex:1 1 auto;min-width:0;border:none;border-radius:10px 0 0 10px;padding:10px 12px;font-size:14px;background:transparent;box-shadow:none}.username-field-unified input:focus{outline:none;box-shadow:none}.username-field-unified .username-suffix{padding:10px 12px 10px 0;color:#9ca3af;font-size:14px;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap}.global-error-overlay{position:fixed;z-index:9999;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;animation:modal-fade-in .15s ease-out}.global-error-box{background:#fff;padding:32px;border-radius:20px;text-align:center;max-width:400px;width:90vw;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;animation:modal-slide-up .2s ease-out}.global-error-box .logout-button{margin-top:20px;background:#dc2626;color:#fff;border:none;padding:10px 24px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:background-color .15s ease}.global-error-box .logout-button:hover{background:#b91c1c}.public-footer{flex-shrink:0;height:clamp(52px,8vh,100px);padding:12px;padding-bottom:calc(12px + env(safe-area-inset-bottom));background-color:#f9fafb;text-align:center;font-size:12px;color:#9ca3af;border-top:1px solid #e5e7eb;box-sizing:border-box}.public-footer a{color:var(--primary-blue, #4f6ef7);text-decoration:none;margin:0 4px;transition:color .15s ease}.public-footer a:hover{text-decoration:underline}.footer-links{margin-bottom:4px}.footer-links span{color:#d1d5db}.footer-info{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:4px;color:#9ca3af}.footer-logo{max-height:24px;max-height:calc(8vh - 40px);object-fit:contain}.public-layout{display:flex;flex-direction:column;height:100vh;width:100%;overflow:hidden;background:#f9fafb}.public-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0;-webkit-overflow-scrolling:touch}.sidebar{width:240px;min-width:240px;max-width:240px;flex-shrink:0;background:#f9fafb;color:#111827;padding:16px 12px;height:100%;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;font-size:14px;border-right:1px solid #e5e7eb;box-sizing:border-box;transition:width .2s ease,min-width .2s ease}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background-color:#9ca3af}.sidebar-top{flex-shrink:0;margin-bottom:8px}.sidebar-scrollable{flex-grow:1;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin}.sidebar-scrollable::-webkit-scrollbar{width:4px}.sidebar-scrollable::-webkit-scrollbar-track{background:transparent}.sidebar-scrollable::-webkit-scrollbar-thumb{background-color:#d1d5db;border-radius:4px}.clinic-dropdown-wrapper{position:relative;font-size:14px;margin-bottom:4px}.sidebar-active-clinic-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:6px;font-weight:600;padding-left:4px}.clinic-dropdown-name{color:#111827;flex:1;min-width:0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clinic-dropdown-selected{background-color:#fff;padding:8px 10px;border:1px solid #e5e7eb;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color .15s ease,box-shadow .15s ease}.clinic-dropdown-selected:hover{border-color:#d1d5db;box-shadow:0 1px 3px #0000000a}.clinic-dropdown-selected.disabled{cursor:default;opacity:.7}.clinic-arrow{font-size:10px;margin-left:8px;color:#9ca3af}.clinic-dropdown-list{position:relative;width:100%;margin-top:6px;background-color:#fff;list-style:none;padding:4px;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 4px 12px #0000000f;animation:sidebar-dropdown-in .15s ease-out;z-index:10}@keyframes sidebar-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.clinic-dropdown-item{color:#374151;padding:8px 10px;margin:2px 0;border:none;border-radius:8px;cursor:pointer;transition:background-color .1s ease;font-weight:500;font-size:13px}.clinic-dropdown-item:hover{background-color:#f3f4f6;color:#111827}.clinic-dropdown-separator{height:1px;background-color:#e5e7eb;margin:6px 8px}.clinic-dropdown-add-button{display:flex;justify-content:center;align-items:center;padding:6px 0;margin:4px;border:1px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .15s ease;text-decoration:none;color:inherit}.clinic-dropdown-add-button:hover{background-color:#f3f4f6;border-color:#9ca3af}.clinic-plus{font-size:18px;color:#9ca3af;font-weight:600}.clinic-dropdown-manage-label{font-size:13px;color:#6b7280;padding:2px 6px;text-align:center;text-decoration:none;font-weight:500}.sidebar-no-permissions{margin:0;padding:12px;font-size:13px;line-height:1.5;color:#6b7280;background:#fff;border:1px solid #e5e7eb;border-radius:10px}.sidebar-section-label{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;font-weight:600;padding:12px 4px 6px}.sidebar-links{list-style:none;padding:0;padding-inline-start:0;margin:0;display:flex;flex-direction:column;gap:2px}.sidebar-links li{list-style:none;margin:0;padding:0}.sidebar-links .sidebar-link{box-sizing:border-box;width:100%;margin:0;padding:8px 10px;font-family:inherit;font-size:14px;font-weight:500;line-height:1.35;color:#374151;text-decoration:none;display:flex;align-items:center;gap:10px;border-radius:8px;transition:all .1s ease;position:relative}.sidebar-links .sidebar-link:visited{color:#374151}.sidebar-links .sidebar-link:hover{background-color:#f3f4f6;color:#111827}.sidebar-links .sidebar-link.active{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff)}.sidebar-links .sidebar-link.active:hover{background-color:var(--primary-blue-hover, #3b5de7)}.sidebar-links .sidebar-link:focus-visible{outline:2px solid var(--primary-blue, #4f6ef7);outline-offset:2px}.sidebar-link-icon{width:18px;height:18px;flex-shrink:0;opacity:.7}.sidebar-links .sidebar-link.active .sidebar-link-icon{opacity:1}.sidebar-expandable-item{margin-bottom:4px}.expandable-header{white-space:normal;word-break:break-word;cursor:pointer;padding:8px 10px;border-radius:8px;transition:background-color .1s ease;display:flex;align-items:center;gap:10px;font-weight:500;color:#374151}.expandable-header:hover{background-color:#f3f4f6}.sidebar-subitems{list-style:none;padding-left:12px;margin-top:2px}.sidebar-subitems li{margin-bottom:2px}.sidebar-subitems li a{color:#6b7280;text-decoration:none;display:block;padding:6px 10px;border-radius:8px;transition:all .1s ease;font-size:13px}.sidebar-subitems li a:hover{background-color:#f3f4f6;color:#111827}.sidebar-subitem-button{width:100%;text-align:left;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:#374151;font-size:inherit;font-family:inherit;cursor:pointer;text-decoration:none;display:flex;align-items:center;gap:10px;transition:background-color .1s ease}.sidebar-subitem-button:hover{background-color:#f3f4f6}.subitem-group{margin:12px 0 6px;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;padding-left:10px}.childclinic-modal{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;padding:24px;z-index:1000}.childclinic-content{background:#fff;color:#111827;width:clamp(360px,90vw,640px);max-height:min(90vh,820px);border-radius:20px;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;display:flex;flex-direction:column;overflow:hidden;animation:childclinic-modalIn .2s ease-out}.childclinic-content,.childclinic-content *{box-sizing:border-box}@keyframes childclinic-modalIn{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.childclinic-header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-bottom:1px solid #e5e7eb;background:#fff;z-index:2}.childclinic-header h3{margin:0;font-size:18px;line-height:1.2;font-weight:600;color:#111827}.childclinic-close{border:none;background:transparent;color:#9ca3af;font-size:24px;line-height:1;cursor:pointer;padding:4px 8px;border-radius:8px;transition:all .15s ease}.childclinic-close:hover{background:#f3f4f6;color:#374151}.childclinic-alert{margin:12px 20px 0;padding:10px 14px;border-radius:10px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;font-size:14px}.childclinic-body{padding:20px;overflow:auto}.childclinic-switch-row{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;margin-bottom:16px}.childclinic-switch{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0}.childclinic-switch input{opacity:0;width:0;height:0}.childclinic-slider{position:absolute;cursor:pointer;top:0;right:0;bottom:0;left:0;background-color:#d1d5db;transition:.2s;border-radius:999px}.childclinic-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;top:3px;background-color:#fff;transition:.2s;border-radius:999px;box-shadow:0 1px 2px #00000014}.childclinic-switch input:checked+.childclinic-slider{background-color:var(--primary-blue, #4f6ef7)}.childclinic-switch input:checked+.childclinic-slider:before{transform:translate(20px)}.childclinic-switch-texts{display:flex;flex-direction:column;gap:2px}.childclinic-switch-title{font-weight:600;color:#111827;font-size:14px}.childclinic-switch-hint{font-size:12px;color:#6b7280}.childclinic-form-grid{display:grid;grid-template-columns:1fr;gap:14px;margin-top:8px}.childclinic-input-group{display:flex;flex-direction:column;gap:6px}.childclinic-input-group.full{grid-column:1 / -1}.childclinic-input-group label{font-size:13px;font-weight:500;color:#374151}.childclinic-input-group input{width:100%;padding:9px 12px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;outline:none;color:#111827;font-size:14px;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.childclinic-input-group input::placeholder{color:#9ca3af}.childclinic-input-group input:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 12%,transparent)}@media(min-width:560px){.childclinic-form-grid{grid-template-columns:1fr 1fr}}.childclinic-password-mismatch{grid-column:1 / -1;color:#dc2626;font-size:13px;margin:-2px 0 4px}.childclinic-password-checklist{grid-column:1 / -1;list-style:none;padding:10px 14px;margin:0 0 2px;font-size:13px;line-height:1.5;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px}.childclinic-password-checklist li{margin:2px 0;padding-left:22px;position:relative}.childclinic-password-checklist li:before{content:"•";position:absolute;left:8px;top:0;color:#9ca3af}.childclinic-password-checklist li.valid{color:#065f46}.childclinic-password-checklist li.valid:before{content:"✓";color:#059669;font-weight:700}.childclinic-password-checklist li.invalid{color:#6b7280}.childclinic-actions{position:sticky;bottom:0;display:flex;gap:10px;justify-content:flex-end;padding:16px 20px;border-top:1px solid #e5e7eb;background:#fff;z-index:2}.childclinic-btn-primary{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:10px;padding:9px 18px;background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);font-weight:500;font-size:14px;font-family:inherit;cursor:pointer;transition:background-color .15s ease}.childclinic-btn-primary:hover{background:var(--primary-blue-hover, #3b5de7)}.childclinic-btn-primary:disabled{background:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.sidebar-overlay{display:none;position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:40}.sidebar-mobile-toggle{display:none;position:fixed;bottom:20px;left:20px;z-index:50;width:48px;height:48px;border-radius:14px;border:none;background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);box-shadow:0 4px 12px #00000026;cursor:pointer;align-items:center;justify-content:center}@media(max-width:768px){.sidebar{position:fixed;top:56px;left:0;bottom:0;z-index:45;transform:translate(-100%);transition:transform .2s ease;box-shadow:4px 0 16px #00000014}.sidebar.sidebar-open{transform:translate(0)}.sidebar-overlay.sidebar-overlay-visible{display:block}.sidebar-mobile-toggle{display:flex}}.global-header{position:sticky;top:0;z-index:100;height:56px;min-height:56px;max-height:56px;background-color:#fff;color:#111827;display:flex;justify-content:space-between;align-items:center;padding:0 20px;border-bottom:1px solid #e5e7eb;box-sizing:border-box;white-space:nowrap;overflow:visible}.header-left{display:flex;align-items:center}.logo-container{display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 8px;margin:-4px -8px;border-radius:8px;transition:background-color .15s ease}.logo-container.clickable:hover{background-color:#f3f4f6}.logo-container.clickable:hover .logo-title{text-decoration:none}.emma-logo{width:32px;height:32px;border-radius:8px;object-fit:cover;object-position:top}.logo-title{font-size:15px;font-weight:600;color:#111827;letter-spacing:-.01em}.header-right{display:inline-flex;align-items:center;gap:6px;flex-shrink:0}.header-clinic-pill{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border-radius:20px;font-size:13px;font-weight:500;letter-spacing:-.01em}.header-clinic-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor;opacity:.6}.header-user-name{font-size:13px;font-weight:500;color:#6b7280;padding:0 4px}.header-settings-menu-wrap{position:relative;flex-shrink:0}.header-gear-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin:0;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:#6b7280;cursor:pointer;transition:all .15s ease}.header-gear-button:hover{background:#f3f4f6;color:#374151;border-color:#d1d5db}.header-gear-icon{width:18px;height:18px}.header-settings-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;margin:0;padding:4px;list-style:none;background:#fff;color:#111827;border-radius:12px;box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f;border:1px solid #e5e7eb;z-index:2100;animation:header-dropdown-in .15s ease-out}@keyframes header-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.header-settings-dropdown a{display:block;padding:8px 12px;font-size:14px;font-weight:500;color:#374151;text-decoration:none;border-radius:8px;transition:background-color .1s ease}.header-settings-dropdown a:hover{background:#f3f4f6;color:#111827}.clinic-name,.user-name{display:none}.logout-button{display:flex;align-items:center;justify-content:center;gap:6px;height:36px;padding:0 14px;background:transparent;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;line-height:1;margin:0;font-family:inherit}.logout-button:hover{background:#fef2f2;color:#dc2626;border-color:#fecaca}.header-logout-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000;animation:fade-in .15s ease-out}.header-logout-modal{background:#fff;color:#111827;padding:32px;border-radius:20px;width:380px;max-width:90vw;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;text-align:center;animation:slide-up .2s ease-out}.header-logout-modal h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#111827}.header-logout-modal p{margin:0 0 24px;font-size:14px;color:#6b7280}.header-logout-buttons{display:flex;justify-content:center;gap:10px}.header-logout-buttons button{padding:9px 20px;font-weight:500;font-size:14px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.header-logout-buttons .confirm{background-color:#dc2626;color:#fff}.header-logout-buttons .confirm:hover{background-color:#b91c1c}.header-logout-buttons button:not(.confirm){background-color:#f3f4f6;color:#374151}.header-logout-buttons button:not(.confirm):hover{background-color:#e5e7eb}.logo-bar{position:absolute;top:16px;right:16px;z-index:10}.logo-bar__img{max-width:140px;max-height:70px;object-fit:contain;display:block;opacity:.85}.welcome-page{max-width:800px;margin:0 auto;padding:8px 0;position:relative}.welcome-greeting{display:flex;align-items:center;gap:16px;margin-bottom:32px}.welcome-avatar{width:52px;height:52px;border-radius:14px;object-fit:cover;object-position:top;flex-shrink:0}.welcome-title{font-size:24px;font-weight:700;color:#111827;margin:0;letter-spacing:-.02em;line-height:1.3}.welcome-subtitle{font-size:15px;color:#6b7280;margin:4px 0 0}.welcome-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:36px}.stat-card{display:flex;align-items:center;gap:14px;padding:18px;background:#fff;border:1px solid #e5e7eb;border-radius:14px;text-decoration:none;color:inherit;transition:all .15s ease;cursor:pointer}.stat-card:hover{border-color:#d1d5db;box-shadow:0 4px 12px #0000000f;transform:translateY(-1px)}.stat-card-icon-wrap{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-card--blue .stat-card-icon-wrap{background:#eff6ff;color:#2563eb}.stat-card--emerald .stat-card-icon-wrap{background:#ecfdf5;color:#059669}.stat-card--violet .stat-card-icon-wrap{background:#f5f3ff;color:#7c3aed}.stat-card-icon{width:22px;height:22px}.stat-card-body{display:flex;flex-direction:column;min-width:0}.stat-card-value{font-size:26px;font-weight:700;color:#111827;line-height:1.2;letter-spacing:-.02em}.stat-card-label{font-size:13px;color:#6b7280;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.welcome-actions-section{margin-bottom:24px}.welcome-section-title{font-size:15px;font-weight:600;color:#374151;margin:0 0 12px}.welcome-actions{display:flex;gap:12px}.quick-action-card{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;text-decoration:none;color:#374151;font-size:14px;font-weight:500;transition:all .15s ease;cursor:pointer}.quick-action-card:hover{background:#f3f4f6;border-color:#d1d5db;color:#111827}.quick-action-icon{color:var(--primary-blue, #4f6ef7);flex-shrink:0}@media(max-width:640px){.welcome-stats{grid-template-columns:1fr}.welcome-actions{flex-direction:column}}.gutachten-container,.gutachten-page{color:#111827}.inline-alert{background:#fffbeb;border:1px solid #fde68a;color:#92400e;padding:12px 14px;border-radius:12px;margin-bottom:16px;font-size:14px}.inline-alert--info{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.gutachten-history-section .gutachten-record-row{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:12px}.gutachten-record-btn{display:inline-flex;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:500;font-family:inherit;color:var(--button-text-color, #fff);background:var(--primary-blue, #4f6ef7);border:none;border-radius:10px;cursor:pointer;transition:all .15s ease}.gutachten-record-btn:hover:not(:disabled){background:var(--primary-blue-hover, #3b5de7)}.gutachten-record-btn:active:not(:disabled){transform:scale(.98)}.gutachten-record-btn:disabled{background:#e5e7eb;color:#9ca3af;cursor:not-allowed}.gutachten-record-btn--active{background:#dc2626}.gutachten-record-btn--active:hover:not(:disabled){background:#b91c1c}.gutachten-mic-hint{font-size:13px;color:#dc2626}.gutachten-list-panel .gutachten-list-heading{font-size:17px;font-weight:600;margin:0 0 8px;color:#111827}.gutachten-list-intro{margin-bottom:20px;color:#6b7280;font-size:14px}.gutachten-list-empty{color:#9ca3af;font-size:14px}.gutachten-global-alert{padding-bottom:0;margin-bottom:0}.gutachten-global-alert .inline-alert{margin-bottom:12px}.gutachten-list-table{width:100%}.gutachten-list-header-wrap{display:flex;align-items:stretch;gap:0;padding-bottom:10px;margin-bottom:8px;border-bottom:1px solid #e5e7eb}.gutachten-list-header-cols{flex:1;min-width:0;display:grid;grid-template-columns:11rem 9rem minmax(0,1fr);gap:12px;padding:0 16px;align-items:center}.gutachten-list-header-cell{font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b7280}.gutachten-list-header-actions-slot{width:88px;flex-shrink:0}.gutachten-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.gutachten-list-item{border:1px solid #e5e7eb;border-radius:12px;background:#fff;overflow:hidden;transition:border-color .15s ease}.gutachten-list-item:hover{border-color:#d1d5db}.gutachten-list-item-head{display:flex;align-items:stretch;gap:0}.gutachten-list-toggle{flex:1;min-width:0;text-align:left;padding:14px 16px;border:none;background:transparent;cursor:pointer;font-family:inherit;display:grid;grid-template-columns:11rem 9rem minmax(0,1fr);gap:12px;align-items:center;transition:background-color .1s ease}.gutachten-list-toggle:hover{background:#f9fafb}.gutachten-list-date{font-size:12px;font-weight:600;color:#374151;min-width:0}.gutachten-list-creator{font-size:13px;color:#4b5563;line-height:1.4;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gutachten-list-summary{font-size:14px;color:#374151;line-height:1.5;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gutachten-list-actions{display:flex;align-items:center;padding-right:8px;gap:4px}.gutachten-list-copy,.gutachten-list-delete{border:none;background:transparent;cursor:pointer;padding:8px;font-size:18px;color:var(--primary-blue, #4f6ef7);line-height:1;border-radius:8px;transition:all .15s ease}.gutachten-list-copy:hover{background:#f3f4f6}.gutachten-list-delete{color:#9ca3af;font-size:20px}.gutachten-list-delete:hover{color:#dc2626;background:#fef2f2}.gutachten-list-body{padding:0 16px 16px;border-top:1px solid #f3f4f6}.gutachten-list-fulltext{min-height:200px;margin-top:10px;font-size:13px}.gutachten-page .lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:1000}.gutachten-page .lightbox.lightbox-confirm{max-width:400px;background-color:#fff;padding:28px;border-radius:20px;text-align:center;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.gutachten-page .lightbox-confirm h3{font-size:18px;margin-bottom:8px;font-weight:600;color:#111827}.gutachten-page .lightbox-confirm p{font-size:14px;margin-bottom:20px;color:#6b7280}.gutachten-page .lightbox-actions{display:flex;justify-content:center;gap:10px;margin-top:8px}.gutachten-page .lightbox-actions .save{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #fff);border:none;padding:9px 18px;border-radius:10px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color .15s ease}.gutachten-page .lightbox-actions .cancel{background-color:#f3f4f6;color:#374151;border:none;padding:9px 18px;border-radius:10px;font-weight:500;font-family:inherit;cursor:pointer;transition:background-color .15s ease}.gutachten-page .lightbox-actions .cancel:hover{background-color:#e5e7eb}.section-title{font-weight:600;margin-bottom:8px;display:block;color:#111827}.upload-section,section{margin-bottom:24px}.upload-box{border:2px dashed #d1d5db;padding:28px;text-align:center;border-radius:12px;background-color:#f9fafb;margin-bottom:10px;position:relative;transition:border-color .15s ease,background-color .15s ease}.upload-box:hover{border-color:var(--primary-blue, #4f6ef7);background-color:#f3f4f6}.upload-box input[type=file]{opacity:0;position:absolute;width:100%;height:100%;left:0;top:0;cursor:pointer}.file-item,.file-list li{background-color:#f3f4f6;border-radius:10px;padding:10px 14px;margin-top:8px;display:flex;justify-content:space-between;align-items:center;font-size:14px}.file-item button,.file-list li button{background:none;border:none;font-size:18px;color:#9ca3af;cursor:pointer;padding:4px;border-radius:6px;transition:color .15s ease}.file-item button:hover,.file-list li button:hover{color:#dc2626}.evaluate-btn,.generate-btn{background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #fff);padding:9px 18px;font-weight:500;border:none;border-radius:10px;cursor:pointer;font-family:inherit;font-size:14px;transition:all .15s ease}.evaluate-btn:hover:not(:disabled),.generate-btn:hover:not(:disabled){background-color:var(--primary-blue-hover, #3b5de7)}.evaluate-btn:active:not(:disabled),.generate-btn:active:not(:disabled){transform:scale(.98)}.evaluate-btn:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;transform:none}.generate-btn-create{margin-top:-12px}.generate-btn-copy{margin-top:0}.draft-actions-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px}.gutachten-btn-secondary{padding:9px 18px;font-weight:500;font-family:inherit;font-size:14px;border-radius:10px;cursor:pointer;background:#fff;color:#374151;border:1px solid #d1d5db;transition:background-color .15s ease,border-color .15s ease}.gutachten-btn-secondary:hover{background:#f9fafb;border-color:#9ca3af}textarea{width:100%;min-height:120px;border:1px solid #e5e7eb;border-radius:10px;padding:12px;font-size:14px;resize:vertical;box-sizing:border-box;font-family:inherit;background:#f9fafb;transition:border-color .15s ease,box-shadow .15s ease}textarea:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.info-hint{font-size:12px;color:#9ca3af;margin-top:4px}.file-list{list-style:none;padding:0;margin-top:10px}.draft-section,.draft-container{position:relative}.draft-container .draft-textarea{min-height:280px;padding:20px}.copy-btn{position:absolute;bottom:12px;right:12px;background:none;border:none;cursor:pointer;padding:6px;border-radius:8px;transition:background-color .15s ease}.copy-btn:hover{background:#f3f4f6}.copy-btn svg{width:20px;height:20px;fill:var(--primary-blue, #4f6ef7)}.standardfolder-page{padding:20px 0}.standardfolder-page h1{margin-bottom:8px}.intro{color:#6b7280;font-size:14px;line-height:1.45;margin-bottom:16px}.bullets{margin:8px 0 0 18px}.box{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:14px;margin-bottom:14px}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.space-between{justify-content:space-between}.row label{min-width:160px;font-weight:600}.row input[type=text]{flex:1;min-width:260px;border:1px solid #e5e7eb;border-radius:10px;padding:9px 12px;font-size:14px}.row button{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #fff);border:none;border-radius:10px;padding:9px 18px;font-size:14px;font-weight:500;font-family:inherit;cursor:pointer;transition:all .15s ease}.row button:disabled{opacity:.6;cursor:not-allowed}.btns{display:flex;gap:8px}.btns .danger{background:#dc2626}.btns .danger:hover{background:#b91c1c}.title{font-weight:600;margin-bottom:2px}.mic-test-row{margin-top:4px}.mic-test-hint{margin-top:8px;margin-bottom:0;max-width:520px}.sub{font-size:13px;color:#6b7280}.hint{margin-top:8px;font-size:12px;color:#6b7280}.msg{margin-top:12px;color:#059669;font-size:14px}.standardfolder-select{flex:1;min-width:260px;border:1px solid #e5e7eb;border-radius:10px;padding:9px 12px;font-size:14px;background:#f9fafb;font-family:inherit}:root{--text-800: #111827;--text-600: #6b7280;--border-200: #e5e7eb;--bg-50: #f9fafb;--card-bg: #ffffff;--danger: #dc2626}.aufnahme-page{padding:24px 0;color:var(--text-800)}.aufnahme-page h1{margin:0 0 16px;font-size:24px;font-weight:700}.inline-alert{background:#fff3cd;border:1px solid #ffe08a;color:#7a5900;padding:10px 12px;border-radius:12px;margin-bottom:16px;font-size:14px}.grid{display:grid;grid-template-columns:1fr 2fr;gap:16px;align-items:stretch;height:560px;min-height:560px}.grid>.card{min-height:0;display:flex;flex-direction:column}.card{background:var(--card-bg);border:1px solid var(--border-200);border-radius:14px;box-shadow:0 1px 3px #0000000a;display:flex;flex-direction:column}.card-header{padding:14px 16px;border-bottom:1px solid var(--border-200);font-weight:600}.card-footer{padding:10px 14px;border-top:1px solid var(--border-200);font-size:12px;color:var(--text-600)}.patient-list{display:flex;flex-direction:column;min-height:0}.patient-list .patient-scroll{flex:1 1 0;min-height:0;overflow-y:auto;overflow-x:hidden}.loader-row,.empty-row{padding:14px 16px;color:var(--text-600)}.patient-row{display:grid;grid-template-columns:2fr 1fr;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--border-200);cursor:pointer;transition:background .15s ease}.patient-row:hover{background:var(--bg-50)}.patient-row.active{outline:2px solid var(--primary-blue);background:#f5f9ff}.patient-name{font-weight:600}.patient-birth{text-align:right;color:var(--text-600);font-size:13px}.form-and-record{padding:16px;display:flex;flex-direction:column;min-height:0}.form-and-record .record-cta{margin-top:auto}.form-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:16px;margin-bottom:12px;align-items:end}.form-field{display:flex;flex-direction:column;justify-content:flex-end}.form-field label{display:flex;align-items:center;gap:6px;font-size:14px;margin-bottom:6px}.req{color:var(--danger);font-weight:700;margin-left:4px}.info{color:var(--text-600);cursor:help;font-size:12px}.form-field input[type=text],.form-field input[type=date]{height:40px;box-sizing:border-box;padding:8px 12px;border:1px solid var(--border-200);border-radius:12px;font-size:14px;outline:none;background:#fff}.form-field input:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #0a74ff26}.consent-box{background:#f7fbff;border:1px dashed var(--primary-blue);padding:12px;border-radius:12px;margin:8px 0 16px}.checkbox-line{display:flex;gap:10px;line-height:1.4}.record-cta{display:flex;align-items:center;gap:14px;margin-bottom:10px}.record-btn{display:inline-flex;align-items:center;gap:12px;padding:12px 16px;background:var(--primary-blue);color:var(--button-text-color);border:none;border-radius:14px;cursor:pointer;font-weight:500;transition:background .15s ease,transform .02s ease}.record-btn:hover:not(:disabled){background:var(--primary-blue-hover)}.record-btn:active:not(:disabled){transform:translateY(1px)}.record-btn:disabled{opacity:.5;cursor:not-allowed}.btn-left{display:grid;place-items:center}.emma-avatar{width:28px;height:28px;border-radius:999px;object-fit:cover;object-position:top;display:block}.btn-text{font-size:14px}.record-dot{width:10px;height:10px;background:var(--danger);border-radius:50%;box-shadow:0 0 #e53935b3;animation:pulse 1.2s infinite}@keyframes pulse{0%{transform:scale(.95);box-shadow:0 0 #e53935b3}70%{transform:scale(1);box-shadow:0 0 0 8px #e5393500}to{transform:scale(.95);box-shadow:0 0 #e5393500}}.field-hint{font-size:12px;color:var(--text-600)}.results-placeholder{margin-top:12px;padding:12px;background:var(--bg-50);border:1px dashed var(--border-200);border-radius:12px;color:var(--text-600)}.results{margin-top:12px}.ai-note{font-size:13px;color:var(--text-600);background:#fffaf2;border:1px solid #ffe6c7;padding:10px 12px;border-radius:12px;margin-bottom:12px}.section{margin-bottom:12px}.section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.section-title{font-weight:600}.copy-btn:hover{background:var(--bg-50)}.section textarea{width:100%;padding:10px 12px;border:1px solid var(--border-200);border-radius:12px;resize:none;min-height:96px;font-size:14px;outline:none}.section textarea:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #0a74ff26}.actions-row{display:flex;justify-content:flex-end;gap:10px;margin-top:8px}.actions-row .primary{background:var(--primary-blue);color:var(--button-text-color);border:none;border-radius:10px;padding:9px 18px;font-weight:500;font-size:14px;font-family:inherit;cursor:pointer;transition:all .15s ease}.actions-row .primary:hover:enabled{background:var(--primary-blue-hover)}.actions-row .primary:disabled{opacity:.5;cursor:not-allowed}.actions-row .secondary{background:#fff;border:1px solid var(--border-200);border-radius:10px;padding:9px 18px;font-weight:500;font-size:14px;font-family:inherit;cursor:pointer;transition:all .15s ease}.actions-row .secondary:hover{background:var(--bg-50)}.async-analysis-card{margin-top:24px}.async-card-body{padding:16px;display:flex;flex-direction:column;gap:12px}.async-note{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-600);gap:8px;flex-wrap:wrap}.async-refresh-btn{border:1px solid var(--border-200);background:#fff;border-radius:10px;padding:6px 12px;font-size:13px;cursor:pointer;transition:background .15s ease}.async-refresh-btn:hover:not(:disabled){background:var(--bg-50)}.async-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.async-table-wrapper{overflow-x:auto}.async-table{width:100%;border-collapse:collapse;font-size:14px}.async-table th,.async-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-200);vertical-align:top}.async-table th{font-weight:600;color:var(--text-600)}.async-patient-name{font-weight:600}.async-status{display:inline-block;margin-top:4px;padding:2px 10px;border-radius:999px;font-size:11px;font-weight:600}.async-status.async-pending,.async-status.async-processing{background:#fff4e5;color:#a15c00}.async-status.async-completed{background:#e6f4ea;color:#176f2c}.async-status.async-failed{background:#fdecea;color:#b3261e}.async-result-text{width:100%;min-height:110px;border:1px solid var(--border-200);border-radius:10px;padding:8px 10px;font-size:13px;line-height:1.4;resize:vertical;background:#fafafa}.async-result-text:focus{border-color:var(--primary-blue);outline:none;box-shadow:0 0 0 2px #0a74ff1a}.async-pending{font-size:13px;color:var(--text-600)}.async-error{font-size:13px;color:#b3261e}.async-row-clickable{cursor:pointer;transition:background .15s ease}.async-row-clickable:hover{background:var(--bg-50)}.async-row-unread{font-weight:600;border-left:3px solid var(--primary-blue, #4f6ef7)}.async-row-unread .async-patient-name{font-weight:700}.async-pagination{display:flex;align-items:center;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-200);flex-wrap:wrap}.async-pagination-info{font-size:13px;color:var(--text-600)}.async-load-more-btn{padding:6px 14px;font-size:13px;font-weight:500;color:var(--primary-blue, #4f6ef7);background:transparent;border:1px solid var(--border-200);border-radius:8px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.async-load-more-btn:hover{background:var(--bg-50);border-color:var(--primary-blue, #4f6ef7)}.async-result-hint{font-size:13px;color:var(--primary-blue);text-decoration:underline}.async-detail-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px}.async-detail-modal{background:var(--card-bg);border-radius:16px;box-shadow:0 12px 40px #0003;max-width:720px;width:100%;max-height:90vh;display:flex;flex-direction:column}.async-detail-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border-200)}.async-modal-title-wrap{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.async-modal-name-edit{display:flex;flex-direction:column;gap:8px}.async-modal-suggestion{margin:0}.async-modal-edit-name{align-self:flex-start}.async-detail-modal-header h2{margin:0;font-size:18px;font-weight:600}.async-detail-modal-close{width:36px;height:36px;border:none;background:transparent;font-size:24px;line-height:1;cursor:pointer;color:var(--text-600);border-radius:8px;padding:0;display:flex;align-items:center;justify-content:center}.async-detail-modal-close:hover{background:var(--bg-50);color:var(--text-800)}.async-detail-modal-body{padding:16px 20px;overflow-y:auto;flex:1 1 auto;min-height:0}.async-detail-modal-body .section-readonly{margin-bottom:16px}.async-detail-modal-body .section-readonly:last-child{margin-bottom:0}.async-detail-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 20px;border-top:1px solid var(--border-200)}.section-content-readonly{margin:0;padding:10px 12px;font-size:13px;line-height:1.5;white-space:pre-wrap;word-break:break-word;background:var(--bg-50);border:1px solid var(--border-200);border-radius:10px;font-family:inherit;max-height:200px;overflow-y:auto}@media(max-width:1100px){.grid{grid-template-columns:1fr;height:auto;min-height:auto}.patient-list{min-height:auto}.patient-list .patient-scroll{max-height:64vh}.async-note{flex-direction:column;align-items:flex-start}}.copy-btn{position:static;display:inline-block;margin-left:8px;border:1px solid var(--border-200);background:#fff;border-radius:10px;padding:6px 10px;font-size:12px;cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.copy-btn:hover:not(.disabled):not(:disabled){background:var(--bg-50)}.copy-btn.disabled,.copy-btn:disabled{opacity:.5;cursor:not-allowed}.copy-btn.copied{background:var(--primary-blue);color:var(--button-text-color);border-color:var(--primary-blue)}.copy-btn{position:static;display:inline-block;margin-left:8px;bottom:auto;right:auto;left:auto;top:auto}.aufnahme-tab-panel[hidden]{display:none!important}.aufnahme-progress-link{margin:0 0 16px;font-size:14px;color:var(--text-600);line-height:1.5}.aufnahme-tab-link,a.aufnahme-tab-link{background:none;border:none;padding:0;margin:0;color:var(--primary-blue);font-weight:600;cursor:pointer;text-decoration:underline;font-size:inherit;font-family:inherit}.aufnahme-tab-link:hover,a.aufnahme-tab-link:hover{color:var(--primary-blue-hover)}.batch-upload-card{max-width:640px}.batch-upload-body{padding:16px;display:flex;flex-direction:column;gap:16px}.batch-upload-hint{margin:0;font-size:14px;color:var(--text-600);line-height:1.5}.batch-file-dropzone{width:100%}.batch-file-list{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text-600)}.batch-file-row{padding:4px 0;border-bottom:1px solid var(--border-200)}.async-source-badge{display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap}.async-source-badge.async-source-manual{background:#e8f0fe;color:#174ea6}.async-source-badge.async-source-upload{background:#f3e8fd;color:#6b2fad}.async-name-suggestion{margin-top:6px;font-size:12px;color:var(--text-600);line-height:1.4}.async-suggestion-label{font-weight:600;color:var(--text-800)}.async-suggestion-apply{margin-left:8px;border:none;background:none;color:var(--primary-blue);font-weight:600;cursor:pointer;font-size:12px;padding:0;text-decoration:underline;font-family:inherit}.async-suggestion-apply:hover:not(:disabled){color:var(--primary-blue-hover)}.async-suggestion-apply:disabled{opacity:.5;cursor:not-allowed}.async-patient-actions{margin-top:6px}.async-edit-name-btn{border:1px solid var(--border-200);background:#fff;border-radius:8px;padding:4px 10px;font-size:12px;cursor:pointer;color:var(--text-800)}.async-edit-name-btn:hover:not(:disabled){background:var(--bg-50)}.async-name-edit{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.async-name-input{width:100%;max-width:280px;padding:6px 10px;border:1px solid var(--border-200);border-radius:8px;font-size:14px}.async-name-input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 2px #0a74ff1a}.async-name-edit-actions{display:flex;flex-wrap:wrap;gap:8px}button.small-btn{padding:4px 12px;font-size:12px;border-radius:8px}.file-drop-zone-wrap{display:flex;flex-direction:column;gap:10px;width:100%;min-width:0}.file-drop-zone{position:relative;display:flex;align-items:center;justify-content:center;min-height:160px;padding:20px 16px;border:2px dashed #d1d5db;border-radius:14px;background:#f9fafb;cursor:pointer;transition:all .15s ease;box-sizing:border-box}.file-drop-zone:hover:not(.file-drop-zone--disabled){border-color:var(--primary-blue, #4f6ef7);background:#fff}.file-drop-zone--active{border-color:var(--primary-blue, #4f6ef7);background:color-mix(in srgb,var(--primary-blue, #4f6ef7) 4%,white)}.file-drop-zone--disabled{opacity:.5;cursor:not-allowed}.file-drop-zone-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}.file-drop-zone-inner{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;pointer-events:none}.file-drop-zone-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,white);color:var(--primary-blue, #4f6ef7)}.file-drop-zone-icon svg{width:22px;height:22px}.file-drop-zone-title{font-size:15px;font-weight:600;color:#111827}.file-drop-zone-hint{font-size:13px;color:#6b7280;line-height:1.5;max-width:320px}.file-drop-zone-footer{font-size:14px;color:#6b7280;word-break:break-word}.dokumente-page-content{width:100%;max-width:none;margin-left:0;margin-right:0}.aufnahme-page.dokumente-page h1{margin-bottom:24px}.aufnahme-page.dokumente-page .card{padding:20px 24px;margin-bottom:20px}.aufnahme-page.dokumente-page .card h2{margin:0 0 16px;font-size:17px;font-weight:600;color:var(--text-800, #2e2e2e)}.dokumente-upload-form{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:start;max-width:none}@media(max-width:560px){.dokumente-upload-form{grid-template-columns:1fr}}.dokumente-filters-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(140px,auto) minmax(140px,auto);gap:16px;align-items:end;margin-bottom:4px}.dokumente-filters-form .input-group{min-width:0;display:flex;flex-direction:column;gap:8px}.dokumente-filters-form .input-group label{flex-shrink:0}.dokumente-filters-form .input-group input,.dokumente-filters-form .input-group select{width:100%;box-sizing:border-box}@media(max-width:640px){.dokumente-filters-form{grid-template-columns:1fr}}.aufnahme-page.dokumente-page .card .grid{display:grid;gap:16px;align-items:end}.input-group{display:flex;flex-direction:column;gap:8px}.input-group label{font-size:13px;font-weight:500;color:#374151}.input-group input[type=text],.input-group input[type=file],.input-group select,.input-group textarea{height:42px;padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;background:#f9fafb;outline:none;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.input-group textarea{height:auto;min-height:60px;resize:vertical}.input-group input[type=file]{padding:10px 12px;cursor:pointer}.dokumente-upload-drop{width:100%;min-width:0}.input-group input:focus,.input-group select:focus,.input-group textarea:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent)}.input-group select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23555' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-weight:500;padding:6px 0}.checkbox-label input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--primary-blue)}.checkbox-label span{-webkit-user-select:none;user-select:none}.delete-modal textarea{padding:12px 14px;border:1px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:14px}.delete-modal textarea:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #007bff1f}.dokumente-page .responsive-table-wrapper{overflow-x:auto;margin-top:12px;border:1px solid var(--border-200, #e7e7e7);border-radius:12px;background:var(--bg-50, #fafafa)}.dokumente-page .table{width:100%;min-width:720px;border-collapse:collapse}.dokumente-page .table th,.dokumente-page .table td{padding:12px 14px;text-align:left;border-bottom:1px solid var(--border-200, #e7e7e7);vertical-align:middle;font-size:14px}.dokumente-page .table th{font-weight:600;font-size:13px;color:var(--text-600, #555);background:var(--bg-50, #fafafa);white-space:nowrap}.dokumente-page .table td:first-child{max-width:280px}.dokumente-page .table th:nth-child(2),.dokumente-page .table td:nth-child(2){width:120px;white-space:nowrap}.dokumente-page .table th:last-child,.dokumente-page .table td:last-child{width:160px;white-space:nowrap}.dokumente-page .table tbody tr:hover{background:#fff}.dokumente-page .table tbody tr:last-child td{border-bottom:none}.dokumente-page .table input[type=text]{padding:8px 10px;border:1px solid var(--border-200, #e7e7e7);border-radius:8px;font-size:13px;width:100%;min-width:80px;max-width:160px}.dokumente-page .table input[type=text]:focus{outline:none;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 2px #0a74ff1a}.dokumente-page .table .table-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.dokumente-page .table .table-actions .secondary-button,.dokumente-page .table .table-actions .primary-button,.dokumente-page .table .table-actions .danger-button{padding:8px 12px;font-size:13px}.dokumente-page .table .table-actions .dokumente-action-icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:8px;min-width:36px;min-height:36px}.dokumente-page .table .table-actions .dokumente-action-icon-btn svg{flex-shrink:0}.primary-button,.secondary-button,.danger-button{padding:9px 18px;border-radius:10px;font-size:14px;font-weight:500;cursor:pointer;transition:all .15s ease;border:none;font-family:inherit}.primary-button:active,.secondary-button:active,.danger-button:active{transform:scale(.98)}.primary-button{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white)}.primary-button:hover:not(:disabled){background:var(--primary-blue-hover, #3b5de7)}.primary-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.secondary-button{background:#f3f4f6;border:1px solid #e5e7eb;color:#374151}.secondary-button:hover:not(:disabled){background:#e5e7eb;color:#111827}.danger-button{background:#fef2f2;border:1px solid #fecaca;color:#dc2626}.danger-button:hover:not(:disabled){background:#dc2626;color:#fff;border-color:#dc2626}.dokumente-preview-modal .dokumente-preview-modal-box{width:min(90vw,1100px);max-height:90vh;display:flex;flex-direction:column}.dokumente-preview-modal .dokumente-preview-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.dokumente-preview-modal .dokumente-preview-header h3{margin:0;font-size:16px}.dokumente-preview-modal .dokumente-preview-iframe-wrap{width:100%;height:75vh;min-height:400px;flex:1;min-height:0}.dokumente-preview-modal .dokumente-preview-iframe-wrap iframe{width:100%;height:100%;border:1px solid var(--border-200, #e7e7e7);border-radius:8px}.dokumente-audit-modal .dokumente-audit-modal-box{width:min(96vw,820px);max-height:90vh;display:flex;flex-direction:column}.dokumente-audit-modal .dokumente-audit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.dokumente-audit-modal .dokumente-audit-header h3{margin:0;font-size:16px}.dokumente-audit-modal .dokumente-audit-summary{margin:0 0 12px;font-size:13px;color:var(--text-600, #555)}.dokumente-audit-modal .dokumente-audit-trail{margin:0;padding:14px;background:var(--bg-50, #fafafa);border:1px solid var(--border-200, #e7e7e7);border-radius:8px;font-size:13px;font-family:inherit;white-space:pre-wrap;word-break:break-word;overflow-y:auto;max-height:50vh}.dokumente-audit-empty{margin:0;font-size:13px;color:var(--text-600, #555)}.dokumente-audit-table-wrap{overflow-x:auto;overflow-y:auto;max-height:min(55vh,420px);border:1px solid var(--border-200, #e7e7e7);border-radius:8px}.dokumente-audit-table{width:100%;border-collapse:collapse;font-size:13px}.dokumente-audit-table th,.dokumente-audit-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-200, #e7e7e7);vertical-align:top}.dokumente-audit-table th{background:var(--bg-50, #fafafa);font-weight:600;color:var(--text-800, #2e2e2e);position:sticky;top:0;z-index:1}.dokumente-audit-table tbody tr:last-child td{border-bottom:none}.dokumente-audit-cell-vorgang,.dokumente-audit-cell-notiz{word-break:break-word;max-width:220px}.table tbody tr.dokumente-row-critical td{background-color:#fff0f0;box-shadow:inset 3px 0 #e8a0a0}.table tbody tr.dokumente-row-critical:hover td{background-color:#fde4e4}.dokumente-forward-modal .dokumente-forward-modal-box{width:min(90vw,480px);max-height:90vh;display:flex;flex-direction:column}.dokumente-forward-modal .dokumente-forward-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;flex-shrink:0}.dokumente-forward-modal .dokumente-forward-header h3{margin:0;font-size:16px}.dokumente-forward-modal .dokumente-forward-summary{margin:0 0 14px;font-size:13px;color:var(--text-600, #555)}.dokumente-forward-modal .dokumente-forward-actions{margin-top:16px;display:flex;justify-content:flex-end;gap:8px}.document-permissions-card{width:100%;max-width:none;box-sizing:border-box}.document-permissions-intro{color:#6b7280;margin-bottom:1.25rem;font-size:14px}.document-permissions-success{padding:10px 14px;background-color:#e8f5e9;border-radius:8px;margin-bottom:1rem;color:#2e7d32}.document-permissions-empty{color:#6b7280;padding:1rem 0}.document-permissions-matrix-wrapper{overflow-x:auto;margin:1rem 0}.document-permissions-matrix{width:100%;min-width:400px;border-collapse:separate;border-spacing:0;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.document-permissions-matrix th,.document-permissions-matrix td{padding:10px 12px;text-align:center;border-bottom:1px solid #f3f4f6;vertical-align:middle}.document-permissions-corner{text-align:left;font-weight:600;font-size:12px;color:#6b7280;background:#f9fafb;text-transform:uppercase;letter-spacing:.05em;min-width:140px;position:sticky;left:0;z-index:1;border-bottom:2px solid #e5e7eb}.document-permissions-cat-header{font-weight:600;font-size:12px;color:#6b7280;background:#f9fafb;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-permissions-personnel-cell{text-align:left;font-size:14px;color:#374151;background:#fff;position:sticky;left:0;z-index:1}.document-permissions-matrix tbody tr:hover .document-permissions-personnel-cell{background:#f9fafb}.document-permissions-cell{background:#fff}.document-permissions-matrix tbody tr:hover .document-permissions-cell{background:#f9fafb}.document-permissions-dot{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:2px solid #e5e7eb;border-radius:50%;background:#fff;cursor:pointer;transition:background-color .15s,border-color .15s}.document-permissions-dot:hover{border-color:#4f6ef7;background:#f0f7ff}.document-permissions-dot.is-allowed{border-color:#2e7d32;background:#e8f5e9}.document-permissions-dot.is-allowed .document-permissions-dot-inner{width:10px;height:10px;border-radius:50%;background:#2e7d32}.document-permissions-dot:focus{outline:none;box-shadow:0 0 0 2px #0a74ff4d}.document-permissions-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.document-settings-card{width:100%;max-width:none;box-sizing:border-box}.document-settings-intro{color:#6b7280;margin-bottom:1.25rem;font-size:14px}.document-settings-coverage-notice{margin-bottom:1.25rem;padding:10px 14px;background-color:#fff8e1;border-radius:8px;color:#5d4037;font-size:14px}.document-settings-coverage-notice-title{margin:0 0 .5rem;font-weight:600}.document-settings-coverage-notice ul{margin:0;padding-left:1.25rem}.document-settings-success{padding:10px 14px;background-color:#e8f5e9;border-radius:8px;margin-bottom:1rem;color:#2e7d32}.document-settings-section{margin-bottom:2rem}.document-settings-section h3{margin:0 0 .75rem;font-size:1rem;font-weight:600}.document-settings-add-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:12px}.document-settings-add-row label{margin-right:4px}.document-settings-table-wrapper{overflow-x:auto;margin-top:8px}.document-settings-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb}.document-settings-table th,.document-settings-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6;vertical-align:middle}.document-settings-table th{font-weight:600;font-size:12px;color:#6b7280;background:#f9fafb;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb}.document-settings-table td{font-size:14px;color:#374151}.document-settings-table tbody tr:last-child td{border-bottom:none}.document-settings-table tbody tr:hover{background:#f9fafb}.document-settings-table input[type=text]{padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;width:100%;min-width:100px;max-width:280px;box-sizing:border-box}.document-settings-table input[type=text]:focus{outline:none;border-color:#4f6ef7;box-shadow:0 0 0 2px #0a74ff1a}.document-settings-username-cell{color:#6b7280;font-size:14px}.document-settings-empty-cell{color:#6b7280;padding:12px 16px}.document-settings-actions{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e5e7eb}.abrechnung-container{--abr-bg-primary: #ffffff;--abr-bg-secondary: #f9fafb;--abr-bg-tertiary: #f3f4f6;--abr-bg-card: #ffffff;--abr-bg-hover: #f3f4f6;--abr-border: #e5e7eb;--abr-border-light: #f3f4f6;--abr-text-primary: #111827;--abr-text-secondary: #6b7280;--abr-text-muted: #9ca3af;--abr-accent-blue: var(--primary-blue, #4f6ef7);--abr-accent-blue-dim: color-mix(in srgb, var(--primary-blue, #4f6ef7) 10%, transparent);--abr-accent-green: #059669;--abr-accent-green-dim: rgba(5, 150, 105, .1);--abr-accent-orange: #d97706;--abr-accent-orange-dim: rgba(217, 119, 6, .1);--abr-accent-red: #dc2626;--abr-accent-red-dim: rgba(220, 38, 38, .1);--abr-accent-purple: #7c3aed;--abr-accent-purple-dim: rgba(124, 58, 237, .1);--abr-sidebar-width: 260px}.abrechnung-container{background:var(--abr-bg-primary);color:var(--abr-text-primary)}.abrechnung-loading,.abrechnung-error{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;min-height:400px;gap:1rem}.abrechnung-error button{padding:.5rem 1rem;background:var(--abr-accent-blue);color:#fff;border:none;border-radius:6px;cursor:pointer}.abrechnung-sidebar{width:var(--abr-sidebar-width);background:var(--primary-blue);border-right:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto}.abrechnung-sidebar .abrechnung-logo{border-bottom-color:#ffffff4d}.abrechnung-sidebar .logo-icon{background:#ffffff40;color:var(--button-text-color)}.abrechnung-sidebar .logo-title,.abrechnung-sidebar .logo-subtitle{color:var(--button-text-color)}.abrechnung-sidebar .nav-label{color:#ffffffb3}.abrechnung-sidebar .nav-item{color:var(--button-text-color)}.abrechnung-sidebar .nav-item:hover{background:var(--primary-blue-hover);color:var(--button-text-color)}.abrechnung-sidebar .nav-item.active{background:#fff3;color:var(--button-text-color)}.abrechnung-sidebar .badge-count{background:#ffffff40;color:var(--button-text-color)}.abrechnung-logo{display:flex;align-items:center;gap:.75rem;padding:1.5rem;border-bottom:1px solid var(--abr-border)}.logo-icon{width:40px;height:40px;background:linear-gradient(135deg,var(--abr-accent-blue),var(--abr-accent-purple));border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;color:#fff}.logo-title{font-weight:600;font-size:1rem;color:var(--abr-text-primary)}.logo-subtitle{font-size:.75rem;color:var(--abr-text-secondary)}.abrechnung-nav{padding:1rem;flex:1}.nav-label{font-size:.6875rem;text-transform:uppercase;letter-spacing:.05em;color:var(--abr-text-muted);padding:.5rem .75rem;margin-top:1rem}.nav-label:first-child{margin-top:0}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;border-radius:8px;color:var(--abr-text-secondary);background:transparent;border:none;cursor:pointer;width:100%;text-align:left;font-size:.875rem;transition:all .2s ease}.nav-item svg{width:20px;height:20px;flex-shrink:0}.nav-item:hover{background:var(--abr-bg-hover);color:var(--abr-text-primary)}.nav-item.active{background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue)}.badge-count{margin-left:auto;background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue);padding:.125rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.abrechnung-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-left h2{font-size:1.5rem;font-weight:600;margin:0;color:var(--abr-text-primary)}.header-left p{font-size:.875rem;color:var(--abr-text-secondary);margin:.25rem 0 0}.header-right{display:flex;gap:1rem}.search-box{display:flex;align-items:center;gap:.5rem;background:var(--abr-bg-tertiary);border:1px solid var(--abr-border);border-radius:8px;padding:.5rem 1rem}.search-box svg{width:18px;height:18px;color:var(--abr-text-muted)}.search-box input{background:transparent;border:none;color:var(--abr-text-primary);outline:none;font-size:.875rem;width:200px}.search-box input::placeholder{color:var(--abr-text-muted)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.stat-card{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;padding:1.25rem;display:flex;align-items:flex-start;gap:1rem;position:relative}.stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.stat-icon svg{width:24px;height:24px}.stat-card.blue .stat-icon{background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue)}.stat-card.green .stat-icon{background:var(--abr-accent-green-dim);color:var(--abr-accent-green)}.stat-card.orange .stat-icon{background:var(--abr-accent-orange-dim);color:var(--abr-accent-orange)}.stat-card.purple .stat-icon{background:var(--abr-accent-purple-dim);color:var(--abr-accent-purple)}.stat-content{flex:1}.stat-value{font-size:1.5rem;font-weight:700;color:var(--abr-text-primary)}.stat-label{font-size:.8125rem;color:var(--abr-text-secondary);margin-top:.25rem}.stat-change{position:absolute;top:1rem;right:1rem;font-size:.75rem;font-weight:600;padding:.25rem .5rem;border-radius:4px}.stat-change.up{background:var(--abr-accent-green-dim);color:var(--abr-accent-green)}.stat-change.down{background:var(--abr-accent-red-dim);color:var(--abr-accent-red)}.filter-tabs{display:flex;gap:.5rem;margin-bottom:1rem;padding:.5rem;background:var(--abr-bg-card);border-radius:8px;border:1px solid var(--abr-border)}.tab{padding:.5rem 1rem;border-radius:6px;border:none;background:transparent;color:var(--abr-text-secondary);cursor:pointer;font-size:.875rem;transition:all .2s ease}.tab:hover{background:var(--abr-bg-hover);color:var(--abr-text-primary)}.tab.active{background:var(--abr-accent-blue);color:#fff}.cases-panel,.rules-panel{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--abr-border)}.panel-header h3{font-size:1rem;font-weight:600;margin:0;color:var(--abr-text-primary)}.data-table{width:100%}.table-header{display:grid;grid-template-columns:2fr .8fr 1fr 1fr 1fr 2fr;gap:1rem;padding:.75rem 1.25rem;background:var(--abr-bg-tertiary);border-bottom:1px solid var(--abr-border)}.rules-table .table-header{grid-template-columns:1fr 2fr 1fr .8fr .8fr 1fr}.table-header-cell{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--abr-text-secondary);display:flex;align-items:center;gap:.5rem}.table-header-cell.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.table-header-cell.sortable:hover{color:var(--abr-text-primary)}.sort-icon{width:14px;height:14px;opacity:.5}.sort-icon.active{opacity:1;color:var(--abr-accent-blue)}.table-row{display:grid;grid-template-columns:2fr .8fr 1fr 1fr 1fr 2fr;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--abr-border);align-items:center;cursor:pointer;transition:background .2s ease}.rules-table .table-row{grid-template-columns:1fr 2fr 1fr .8fr .8fr 1fr;cursor:default}.table-row:hover{background:var(--abr-bg-hover)}.table-row:last-child{border-bottom:none}.patient-info{display:flex;align-items:center;gap:.75rem}.avatar{width:40px;height:40px;background:linear-gradient(135deg,var(--abr-accent-blue),var(--abr-accent-purple));border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:#fff}.patient-details h4{font-size:.875rem;font-weight:600;margin:0;color:var(--abr-text-primary)}.patient-details span{font-size:.75rem;color:var(--abr-text-muted)}.type-badge{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.type-badge.gkv{background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue)}.type-badge.hzv{background:var(--abr-accent-purple-dim);color:var(--abr-accent-purple)}.type-badge.goa{background:var(--abr-accent-green-dim);color:var(--abr-accent-green)}.money{font-family:JetBrains Mono,monospace;font-size:.875rem;color:var(--abr-text-primary)}.money-positive{color:var(--abr-accent-green)}.text-muted{color:var(--abr-text-muted)}.status{display:flex;align-items:center;gap:.5rem;font-size:.875rem}.status-dot{width:8px;height:8px;border-radius:50%}.status-dot.complete{background:var(--abr-accent-green)}.status-dot.optimizable{background:var(--abr-accent-orange)}.status-dot.error{background:var(--abr-accent-red)}.status-dot.pending{background:var(--abr-text-muted)}.optimization-inline{display:flex;flex-direction:column;gap:.25rem}.optimization-inline.has-suggestion{color:var(--abr-accent-orange)}.optimization-inline.complete{color:var(--abr-accent-green)}.optimization-title{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;font-weight:500}.optimization-title svg{width:16px;height:16px}.optimization-amount{font-family:JetBrains Mono,monospace;font-size:.75rem;font-weight:600}.optimization-complete-text{display:flex;align-items:center;gap:.5rem;font-size:.8125rem}.optimization-complete-text svg{width:16px;height:16px}.rule-id,.rule-code{font-family:JetBrains Mono,monospace;font-size:.8125rem;color:var(--abr-text-secondary)}.badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500;background:var(--abr-bg-tertiary);color:var(--abr-text-secondary)}.priority-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.priority-badge.p1{background:var(--abr-accent-red-dim);color:var(--abr-accent-red)}.priority-badge.p2{background:var(--abr-accent-orange-dim);color:var(--abr-accent-orange)}.priority-badge.p3{background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue)}.status-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.status-badge.active{background:var(--abr-accent-green-dim);color:var(--abr-accent-green)}.status-badge.inactive{background:var(--abr-bg-tertiary);color:var(--abr-text-muted)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overflow-y:auto}.modal-overlay>.modal{margin:0;position:relative}.modal{background:var(--abr-bg-card);border:2px solid var(--abr-accent-blue);border-radius:16px;max-width:600px;width:calc(100% - 4rem);max-height:calc(100vh - 4rem);overflow-y:auto;box-shadow:0 20px 60px #0000001f,0 0 0 1px #0000000f;position:relative;margin:auto;animation:modalFadeIn .2s ease-out;display:flex;flex-direction:column;align-self:center;justify-self:center}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95) translateY(-10px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;border-bottom:2px solid var(--abr-accent-blue);background:var(--abr-bg-secondary);border-radius:16px 16px 0 0;border-top:none;border-left:none;border-right:none}.modal-header h3{font-size:1.125rem;font-weight:600;margin:0;color:var(--abr-text-primary)}.modal-close{background:transparent;border:none;color:var(--abr-text-muted);cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.modal-close:hover{background:var(--abr-bg-hover);color:var(--abr-text-primary)}.modal-close svg{width:20px;height:20px}.modal-body{padding:1.5rem;overflow-y:auto;flex:1}.modal-large .modal-body{padding:2rem}.detail-section{margin-bottom:1.5rem}.detail-section:last-child{margin-bottom:0}.detail-section h4{font-size:.875rem;font-weight:600;color:var(--abr-text-secondary);margin:0 0 .75rem;text-transform:uppercase;letter-spacing:.05em}.detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.detail-item{display:flex;flex-direction:column;gap:.25rem}.detail-item label{font-size:.75rem;color:var(--abr-text-muted)}.detail-item span{font-size:.875rem;color:var(--abr-text-primary)}.code-list{display:flex;flex-wrap:wrap;gap:.5rem}.code-badge{padding:.375rem .75rem;background:var(--abr-bg-tertiary);border:1px solid var(--abr-border);border-radius:6px;font-family:JetBrains Mono,monospace;font-size:.8125rem;color:var(--abr-text-primary)}.optimization-box{background:var(--abr-accent-orange-dim);border:1px solid rgba(251,146,60,.3);border-radius:8px;padding:1rem}.optimization-box h5{font-size:.9375rem;font-weight:600;color:var(--abr-accent-orange);margin:0 0 .5rem}.optimization-box p{font-size:.875rem;color:var(--abr-text-primary);margin:0 0 .75rem;line-height:1.5}.optimization-potential{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid rgba(251,146,60,.3)}.optimization-potential span{font-size:.8125rem;color:var(--abr-text-secondary)}.optimization-potential strong{font-size:1rem;font-weight:700;color:var(--abr-accent-green)}@media(max-width:1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}.table-header,.table-row{grid-template-columns:2fr 1fr 1fr 2fr}.table-header-cell:nth-child(4),.table-row>*:nth-child(4){display:none}.table-header-cell:nth-child(5),.table-row>*:nth-child(5){display:none}}@media(max-width:768px){.abrechnung-container{flex-direction:column}.stats-grid{grid-template-columns:1fr}.table-header,.table-row{grid-template-columns:1fr 1fr}.table-header-cell:nth-child(n+3),.table-row>*:nth-child(n+3){display:none}.abrechnung-header{flex-direction:column;gap:1rem;align-items:flex-start}.search-box,.search-box input{width:100%}.modal-overlay{padding:1rem}.modal,.modal-large{width:calc(100% - 2rem);max-height:calc(100vh - 2rem)}}.date-range-selector{display:flex;align-items:center;gap:12px;padding:16px 24px;background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;margin-bottom:24px;flex-wrap:wrap}.date-range-selector label{display:flex;align-items:center;gap:8px;font-weight:500;color:var(--abr-text-primary);white-space:nowrap}.date-range-selector label svg{color:var(--abr-accent-blue)}.date-range-select{padding:8px 16px;border:1px solid var(--abr-border);border-radius:8px;background:var(--abr-bg-tertiary);color:var(--abr-text-primary);font-size:14px;cursor:pointer;transition:all .2s;min-width:180px}.date-range-select:hover{border-color:var(--abr-accent-blue)}.date-range-select:focus{outline:none;border-color:var(--abr-accent-blue);box-shadow:0 0 0 3px var(--abr-accent-blue-dim)}.date-separator{color:var(--abr-text-muted);font-size:14px;font-weight:500}.date-input{padding:8px 12px;border:1px solid var(--abr-border);border-radius:8px;background:var(--abr-bg-tertiary);color:var(--abr-text-primary);font-size:14px;transition:all .2s}.date-input:hover{border-color:var(--abr-accent-blue)}.date-input:focus{outline:none;border-color:var(--abr-accent-blue);box-shadow:0 0 0 3px var(--abr-accent-blue-dim)}.btn-sm{padding:6px 12px;font-size:13px}.btn-export{display:flex;align-items:center;gap:.5rem}.catalog-panel{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;overflow:hidden}.catalog-table .table-header,.catalog-table .table-row{grid-template-columns:1fr 2fr 1fr 1fr 1fr}.settings-panel{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;overflow:hidden}.settings-content{padding:1.5rem}.setting-section{margin-bottom:2rem}.setting-section:last-child{margin-bottom:0}.setting-section h4{font-size:1rem;font-weight:600;color:var(--abr-text-primary);margin:0 0 1rem}.setting-item{margin-bottom:1rem}.setting-item label{display:flex;align-items:center;gap:.5rem;color:var(--abr-text-primary);font-size:.875rem}.theme-switcher{display:flex;gap:1rem}.theme-option{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;border:1px solid var(--abr-border);border-radius:8px;background:var(--abr-bg-tertiary);color:var(--abr-text-primary);cursor:pointer;transition:all .2s}.theme-option:hover{border-color:var(--abr-accent-blue);background:var(--abr-bg-hover)}.theme-option svg{width:24px;height:24px}.rule-actions{display:flex;gap:.5rem}.btn-icon{background:transparent;border:none;color:var(--abr-text-secondary);cursor:pointer;padding:.5rem;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.btn-icon:hover{background:var(--abr-bg-hover);color:var(--abr-text-primary)}.btn-icon svg{width:18px;height:18px}.modal-large{max-width:900px;width:calc(100% - 4rem);border:2px solid var(--abr-accent-blue);box-shadow:0 20px 60px #0000001f,0 0 0 1px #0000000f;animation:modalFadeIn .2s ease-out;align-self:center;justify-self:center;margin:auto}.modal-large .modal-header{border-bottom:2px solid var(--abr-accent-blue);border-top:none;border-left:none;border-right:none}.modal-overlay .modal .modal-body{color:var(--abr-text-primary, #333333)}.modal-overlay .modal form label{color:var(--abr-text-primary, #333333);font-weight:500}.modal-overlay .modal .btn-secondary{background:var(--abr-bg-tertiary, #f3f4f6);border:1px solid var(--abr-border, #e5e7eb);color:var(--abr-text-primary, #111827)}.modal-overlay .modal form input,.modal-overlay .modal form select{color:var(--abr-text-primary, #111827);background:var(--abr-bg-tertiary, #f9fafb);border-color:var(--abr-border, #e5e7eb)}.code-editor{font-family:JetBrains Mono,monospace;font-size:.875rem;background:var(--abr-bg-tertiary);border:1px solid var(--abr-border);border-radius:8px;padding:1rem;color:var(--abr-text-primary);resize:vertical}form label{display:block;margin-bottom:.5rem;font-size:.875rem;font-weight:500;color:var(--abr-text-primary)}form input[type=text],form input[type=number],form input[type=date],form select,form textarea{width:100%;padding:.5rem;border:1px solid var(--abr-border);border-radius:6px;background:var(--abr-bg-tertiary);color:var(--abr-text-primary);font-size:.875rem;transition:all .2s}form input[type=text]:focus,form input[type=number]:focus,form input[type=date]:focus,form select:focus,form textarea:focus{outline:none;border-color:var(--abr-accent-blue);box-shadow:0 0 0 3px var(--abr-accent-blue-dim)}form input[type=checkbox]{width:auto;margin-right:.5rem}.btn{padding:.5rem 1rem;border-radius:6px;border:none;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.5rem}.btn-primary{background:var(--abr-accent-blue);color:#fff}.btn-primary:hover{background:var(--primary-blue-hover)}.btn-secondary{background:var(--abr-bg-tertiary);color:var(--abr-text-primary);border:1px solid var(--abr-border)}.btn-secondary:hover{background:var(--abr-bg-hover)}.btn-danger{background:var(--abr-accent-red);color:#fff}.btn-danger:hover{background:#e05050}.kpi-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.kpi-card{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;padding:1rem;text-align:center}.kpi-value{font-size:1.75rem;font-weight:700;color:var(--abr-text-primary);line-height:1.2}.kpi-label{font-size:.8125rem;font-weight:600;color:var(--abr-text-secondary);margin-top:.25rem}.kpi-sub{font-size:.75rem;color:var(--abr-text-muted)}.kpi-danger{color:var(--abr-accent-red)!important}.panel{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;overflow:hidden;margin-bottom:1.5rem}.panel-body{padding:1rem}.ampel-badge{display:inline-block;padding:.125rem .625rem;border-radius:6px;font-size:.75rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.5px}.ampel-gruen{background:#28a745}.ampel-gelb{background:#ffc107;color:#111827}.ampel-orange{background:var(--abr-accent-orange)}.ampel-rot{background:#dc3545}.plausi-filters{display:flex;gap:1rem;align-items:flex-end;margin-bottom:1.5rem;flex-wrap:wrap}.plausi-filters .filter-group{display:flex;flex-direction:column;gap:.25rem}.plausi-filters .filter-group label{font-size:.6875rem;font-weight:600;color:var(--abr-text-muted);text-transform:uppercase;letter-spacing:.05em}.form-select{padding:.5rem .75rem;border:1px solid var(--abr-border);border-radius:8px;background:var(--abr-bg-tertiary);color:var(--abr-text-primary);font-size:.875rem;min-width:120px}.form-select:focus{outline:none;border-color:var(--abr-accent-blue);box-shadow:0 0 0 3px var(--abr-accent-blue-dim)}.toggle-label{display:flex;align-items:center;gap:.5rem;font-size:.875rem!important;text-transform:none!important;cursor:pointer;min-height:34px}.plausi-arzt-row{display:flex;gap:.75rem;margin-bottom:1.5rem;flex-wrap:wrap}.plausi-arzt-card{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--abr-bg-tertiary);border:1px solid var(--abr-border);border-radius:8px;min-width:200px}.plausi-arzt-card.plausi-arzt-warn{border-color:var(--abr-accent-orange)}.plausi-arzt-name{font-weight:700;font-size:.875rem;min-width:28px}.plausi-arzt-ampeln{display:flex;gap:4px}.ampel-dot{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:11px;font-weight:700;color:#fff}.ampel-dot.ampel-gruen{background:#28a745}.ampel-dot.ampel-gelb{background:#ffc107}.ampel-dot.ampel-orange{background:var(--abr-accent-orange)}.ampel-dot.ampel-rot{background:#dc3545}.plausi-arzt-total{font-size:.75rem;color:var(--abr-text-muted);margin-left:auto}.plausi-table{width:100%;border-collapse:collapse}.plausi-table th,.plausi-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid var(--abr-border)}.plausi-table th{font-size:.75rem;font-weight:600;color:var(--abr-text-muted);text-transform:uppercase;background:var(--abr-bg-tertiary)}.plausi-table td{font-size:.875rem;color:var(--abr-text-primary)}.plausi-table .text-left{text-align:left}.plausi-table .text-right{text-align:right}.plausi-table .text-center{text-align:center}.plausi-row.clickable{cursor:pointer}.plausi-row.clickable:hover{background:var(--abr-bg-hover)}.progress-bar-container{width:100%;height:20px;background:var(--abr-bg-tertiary);border-radius:4px;overflow:hidden}.progress-bar-fill{height:100%;border-radius:4px;transition:width .3s ease}.text-danger{color:var(--abr-accent-red)}.text-success{color:var(--abr-accent-green)}.plausi-detail-modal{max-width:960px;width:90vw}.plausi-detail-summary{display:flex;gap:1rem;align-items:center;flex-wrap:wrap;margin-bottom:1rem;padding:.75rem;background:var(--abr-bg-tertiary);border-radius:8px}.plausi-section-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;margin-top:.75rem;font-size:.875rem;font-weight:600;color:var(--abr-text-primary)}.plausi-section-sum{display:flex;align-items:center;gap:.5rem}.plausi-over{font-size:.75rem;color:var(--abr-accent-red);font-weight:600}.statistik-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem}.chart-card{background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:12px;overflow:hidden;min-height:320px}.chart-container{padding:.75rem 1rem;position:relative;height:280px}.dq-bars{display:flex;flex-direction:column;gap:.75rem}.dq-bar-row{display:grid;grid-template-columns:80px 1fr 50px;gap:.75rem;align-items:center}.dq-bar-label{font-size:.875rem;font-weight:600;color:var(--abr-text-secondary)}.dq-bar-track{height:20px;background:var(--abr-bg-tertiary);border-radius:4px;overflow:hidden}.dq-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.dq-bar-value{font-size:.875rem;font-weight:700;color:var(--abr-text-primary);text-align:right;font-family:JetBrains Mono,monospace}.badge-entbudgetiert{background:var(--abr-accent-green-dim);color:var(--abr-accent-green);font-size:.625rem;padding:.125rem .375rem;border-radius:4px;font-weight:600;letter-spacing:.03em}.badge-budgetiert{background:var(--abr-bg-tertiary);color:var(--abr-text-muted);font-size:.625rem;padding:.125rem .375rem;border-radius:4px;font-weight:500}.rule-type-badge{font-size:.6875rem;padding:.0625rem .375rem;border-radius:3px;font-weight:500;white-space:nowrap}.rule-type-korrektur{background:var(--abr-accent-red-dim);color:var(--abr-accent-red)}.rule-type-potential{background:var(--abr-accent-blue-dim);color:var(--abr-accent-blue)}.data-status-bar{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:var(--abr-bg-card);border:1px solid var(--abr-border);border-radius:8px;margin-bottom:1rem;font-size:.8125rem;color:var(--abr-text-secondary)}.data-status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:.5rem}.data-status-dot.fresh{background:var(--abr-accent-green)}.data-status-dot.aging{background:var(--abr-accent-orange)}.data-status-dot.stale{background:var(--abr-accent-red)}.data-status-dot.unknown{background:var(--abr-text-muted)}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;padding:1rem;border-top:1px solid var(--abr-border)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.pagination span{font-size:.875rem;color:var(--abr-text-secondary)}.dropzone{border:2px dashed var(--abr-border);border-radius:8px;padding:2rem;text-align:center;cursor:pointer;background:var(--abr-bg-tertiary);transition:border-color .2s}.dropzone:hover,.dropzone.active{border-color:var(--abr-accent-blue)}.dropzone p{color:var(--abr-text-secondary);margin:0}@media(max-width:1200px){.kpi-cards{grid-template-columns:repeat(2,1fr)}.statistik-grid{grid-template-columns:1fr}}@media(max-width:768px){.kpi-cards{grid-template-columns:1fr}.plausi-filters{flex-direction:column;align-items:stretch}.plausi-arzt-row{flex-direction:column}}.dienstplan-container{--dp-bg-secondary: #f9fafb;--dp-border: #e5e7eb;--dp-text-primary: #111827;--dp-text-secondary: #6b7280;--dp-bg-hover: #f3f4f6;--dp-accent: var(--primary-blue)}.dienstplan-nav{position:sticky;top:0;z-index:100;overflow:visible}.dienstplan-nav-container.page-tab-bar__nav{flex-wrap:wrap;overflow-x:visible}.page-tab-bar__nav .dienstplan-nav-dropdown-toggle.open{color:var(--page-tab-bar-accent);font-weight:600;border-bottom-color:var(--page-tab-bar-accent)}.dienstplan-nav-dropdown{position:relative}.dienstplan-nav-dropdown-arrow{font-size:.75rem;transition:transform .15s ease}.dienstplan-nav-dropdown-toggle.open .dienstplan-nav-dropdown-arrow{transform:rotate(180deg)}.dienstplan-nav-dropdown-menu{position:absolute;top:100%;left:0;background-color:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 8px 24px #0000001f,0 2px 8px #0000000f;min-width:200px;z-index:1000;margin-top:4px}.dienstplan-nav-dropdown-item{display:block;width:100%;text-align:left;padding:.75rem 1rem;font-size:.875rem;color:#6b7280;background:none;border:none;cursor:pointer;font-family:inherit;transition:background-color .15s ease}.dienstplan-nav-dropdown-item:hover{background-color:#f9fafb;color:#111827}.dienstplan-nav-dropdown-item.active{background-color:#7f7f7f26;font-weight:600;color:var(--primary-blue)}.dienstplan-main-content{background-color:#f9fafb}.dienstplan-view{background-color:#fff;border-radius:12px;padding:1.5rem;min-height:400px;border:1px solid #e5e7eb}.dienstplan-view h1{font-size:24px;font-weight:700;color:#111827;margin-bottom:1rem}.dienstplan-view p{color:#6b7280;font-size:14px}:root{--dp-chrome: var(--primary-blue, #4f6ef7);--dp-chrome-light: color-mix(in srgb, var(--primary-blue, #4f6ef7) 70%, white);--dp-chrome-dark: var(--primary-blue-hover, #3b5de7);--dp-bg-primary: #ffffff;--dp-bg-secondary: #f9fafb;--dp-bg-tertiary: #f3f4f6;--dp-bg-hover: #f3f4f6;--dp-bg-active: #e5e7eb;--dp-text-primary: #111827;--dp-text-secondary: #6b7280;--dp-text-muted: #9ca3af;--dp-text-inverse: var(--button-text-color, #ffffff);--dp-success: #059669;--dp-warning: #d97706;--dp-danger: #dc2626;--dp-info: #2563eb;--dp-border: #e5e7eb;--dp-border-hover: #d1d5db;--dp-border-focus: var(--primary-blue, #4f6ef7);--dp-border-subtle: #f3f4f6;--dp-shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--dp-shadow-md: 0 2px 6px rgba(0, 0, 0, .06);--dp-shadow-lg: 0 4px 12px rgba(0, 0, 0, .08);--dp-radius-sm: 6px;--dp-radius-md: 8px;--dp-radius-lg: 10px;--dp-transition: .15s ease;--dp-aufgabe-akut: #6B9BD1;--dp-aufgabe-infekt: #7BAF7A;--dp-aufgabe-termin: #C9C5BE;--dp-aufgabe-hausbesuch: #E8B85C;--dp-aufgabe-visite: #A67C52;--dp-aufgabe-telefon: #4A8B8B}.dp-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;height:36px;padding:0 1rem;font-size:.8125rem;font-weight:500;line-height:1;border-radius:var(--dp-radius-md);transition:all var(--dp-transition);cursor:pointer;border:1px solid transparent;white-space:nowrap}.dp-btn:focus-visible{outline:2px solid var(--dp-border-focus);outline-offset:2px}.dp-btn-primary{background-color:var(--dp-chrome);color:var(--dp-text-inverse)}.dp-btn-primary:hover:not(:disabled){background-color:var(--dp-chrome-dark)}.dp-btn-secondary{background-color:var(--dp-bg-primary);color:var(--dp-text-primary);border-color:var(--dp-border)}.dp-btn-secondary:hover:not(:disabled){border-color:var(--dp-border-hover);background-color:var(--dp-bg-secondary)}.dp-btn-success{background-color:var(--dp-success);color:var(--dp-text-inverse)}.dp-btn-success:hover:not(:disabled){background-color:#218838}.dp-btn-danger{background-color:var(--dp-danger);color:var(--dp-text-inverse)}.dp-btn-danger:hover:not(:disabled){background-color:#c82333}.dp-btn-ghost{background-color:transparent;color:var(--dp-text-secondary)}.dp-btn-ghost:hover:not(:disabled){background-color:var(--dp-bg-secondary);color:var(--dp-text-primary)}.dp-btn-sm{height:30px;padding:0 .75rem;font-size:.75rem}.dp-btn:disabled{opacity:.5;cursor:not-allowed}.dp-input,.dp-select{width:100%;height:36px;padding:0 .75rem;font-size:.8125rem;background-color:var(--dp-bg-primary);border:1px solid var(--dp-border);border-radius:var(--dp-radius-md);color:var(--dp-text-primary);transition:all var(--dp-transition)}.dp-input:hover,.dp-select:hover{border-color:var(--dp-border-hover)}.dp-input:focus,.dp-select:focus{outline:none;border-color:var(--dp-border-focus);box-shadow:0 0 0 3px #f5a62326}.dp-input::placeholder{color:var(--dp-text-muted)}.dp-textarea{width:100%;min-height:100px;padding:.75rem;font-size:.8125rem;background-color:var(--dp-bg-primary);border:1px solid var(--dp-border);border-radius:var(--dp-radius-md);color:var(--dp-text-primary);resize:vertical}.dp-textarea:focus{outline:none;border-color:var(--dp-border-focus);box-shadow:0 0 0 3px #f5a62326}.dp-form-group{margin-bottom:1rem}.dp-form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--dp-text-secondary);font-size:.8125rem}.dp-checkbox-label{display:flex;align-items:center;gap:.5rem;cursor:pointer}.dp-checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--dp-warning)}.dp-table-container{overflow-x:auto;border:1px solid var(--dp-border);border-radius:var(--dp-radius-md);background-color:var(--dp-bg-primary)}.dp-table{width:100%;border-collapse:collapse}.dp-table thead{background-color:var(--dp-bg-secondary)}.dp-table th{padding:.75rem 1rem;text-align:left;font-size:.75rem;font-weight:600;color:var(--dp-text-secondary);border-bottom:1px solid var(--dp-border);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;-webkit-user-select:none;user-select:none}.dp-table th:hover{background-color:var(--dp-bg-hover)}.dp-table td{padding:.75rem 1rem;font-size:.8125rem;color:var(--dp-text-primary);border-bottom:1px solid var(--dp-border-subtle)}.dp-table tbody tr:hover{background-color:var(--dp-bg-hover)}.dp-table tbody tr:last-child td{border-bottom:none}.dp-badge{display:inline-flex;align-items:center;padding:3px 8px;font-size:.75rem;font-weight:500;line-height:1;border-radius:var(--dp-radius-sm);white-space:nowrap}.dp-badge-success{background-color:#28a7451a;color:var(--dp-success)}.dp-badge-danger{background-color:#dc35451a;color:var(--dp-danger)}.dp-badge-warning{background-color:#f5a6231a;color:#c78c1c}.dp-badge-info{background-color:#17a2b81a;color:var(--dp-info)}.dp-status-active{background:#28a7451a;color:var(--dp-success);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase}.dp-status-inactive{background:var(--dp-bg-tertiary);color:var(--dp-text-muted);padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase}.dp-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1040;display:flex;align-items:center;justify-content:center;padding:1rem}.dp-modal-backdrop:not(.active){display:none;pointer-events:none}.dp-modal{background-color:var(--dp-bg-primary);border:1px solid var(--dp-border);border-radius:var(--dp-radius-lg);width:100%;max-width:500px;max-height:90vh;overflow:hidden;box-shadow:0 8px 16px #0003;animation:dpSlideUp .2s ease}.dp-modal-lg{max-width:700px}.dp-modal-xl{max-width:900px}.dp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--dp-border-subtle)}.dp-modal-title{font-size:1rem;font-weight:600;margin:0;color:var(--dp-text-primary)}.dp-modal-close{color:var(--dp-text-muted);font-size:1.125rem;line-height:1;cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:var(--dp-radius-sm);background:none;border:none}.dp-modal-close:hover{color:var(--dp-text-primary);background-color:var(--dp-bg-tertiary)}.dp-modal-body{padding:1rem;overflow-y:auto;max-height:calc(90vh - 140px)}.dp-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:1rem;border-top:1px solid var(--dp-border-subtle);background-color:var(--dp-bg-secondary)}@keyframes dpSlideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dp-page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:1.5rem;gap:1rem}.dp-page-title{font-size:1.25rem;font-weight:600;color:var(--dp-text-primary);margin:0 0 .25rem}.dp-page-description{font-size:.8125rem;color:var(--dp-text-muted);margin:0}.dp-page-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.dp-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;background-color:var(--dp-bg-primary);border:1px solid var(--dp-border);border-radius:var(--dp-radius-md);margin-bottom:1rem;flex-wrap:wrap}.dp-toolbar-left,.dp-toolbar-right{display:flex;align-items:center;gap:.75rem}.dp-filter-group{display:flex;align-items:center;gap:.5rem}.dp-filter-group label{font-size:.8125rem;font-weight:500;color:var(--dp-text-secondary);white-space:nowrap}.dp-filter-group .dp-select,.dp-filter-group .dp-input{width:auto;min-width:120px}.dp-action-buttons{display:flex;gap:6px;justify-content:flex-end}.dp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;gap:.75rem;color:var(--dp-text-muted)}.dp-spinner{display:inline-block;width:24px;height:24px;border:3px solid var(--dp-border);border-top-color:var(--dp-warning);border-radius:50%;animation:dpSpin .8s linear infinite}@keyframes dpSpin{to{transform:rotate(360deg)}}.dp-alert{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;border-radius:var(--dp-radius-md);border:1px solid;margin-bottom:1rem}.dp-alert-success{background-color:#28a74514;border-color:var(--dp-success);color:#155724}.dp-alert-warning{background-color:#f5a62314;border-color:var(--dp-warning);color:#856404}.dp-alert-error{background-color:#dc354514;border-color:var(--dp-danger);color:#721c24}.dp-empty-state{text-align:center;padding:3rem 1rem;color:var(--dp-text-muted)}.dp-empty-state p{margin:.5rem 0 0;font-size:.875rem}.dp-excel-container{overflow-x:auto;overflow-y:visible;max-width:100%;background:var(--dp-bg-secondary);border-radius:var(--dp-radius-md);box-shadow:var(--dp-shadow-md)}.dp-excel-table{border-collapse:collapse;font-size:11px;white-space:nowrap;width:max-content;min-width:100%;table-layout:auto;-webkit-user-select:none;user-select:none}.dp-excel-table thead{position:sticky;top:0;z-index:10}.dp-excel-table .header-gruppen th{background:linear-gradient(180deg,#5a5a5a,#4a4a4a);color:#fff;font-weight:700;font-size:12px;padding:10px 6px;border:1px solid #444;text-align:center;text-transform:uppercase;letter-spacing:.5px}.dp-excel-table .header-spalten th{background:linear-gradient(180deg,#888,#777);color:#fff;font-weight:700;font-size:10px;padding:8px 4px;border:1px solid #666;text-align:center;min-width:35px;max-width:50px}.dp-excel-table .header-kw,.dp-excel-table .header-datum,.dp-excel-table .header-tag,.dp-excel-table .header-schicht{background:linear-gradient(180deg,#5a5a5a,#4a4a4a)!important;color:#fff!important;font-weight:700;border-bottom:3px solid var(--dp-warning)!important;width:1px;white-space:nowrap}.dp-excel-table tbody tr:hover{filter:brightness(.95)}.dp-excel-table td{border:1px solid #e5e7eb;padding:3px 4px;text-align:center;vertical-align:middle;height:22px}.dp-excel-table .cell-kw{background:#f9fafb;font-weight:700;font-size:10px;color:#6b7280;width:1px;white-space:nowrap}.dp-excel-table .cell-datum{background:#fafafa;font-weight:500;text-align:left;padding-left:6px;width:1px;white-space:nowrap}.dp-excel-table .cell-tag{background:#fafafa;text-align:left;padding-left:6px;width:1px;white-space:nowrap}.dp-excel-table .cell-schicht{background:#f3f4f6;font-size:10px;color:#6b7280;width:1px;white-space:nowrap}.dp-excel-table .cell-aufgabe{font-weight:600;font-size:10px;cursor:pointer;transition:all .15s ease;min-width:35px}.dp-excel-table .cell-aufgabe:hover{transform:scale(1.05);box-shadow:0 2px 8px #0003;z-index:5;position:relative}.dp-excel-table .cell-empty{color:#9ca3af;background-color:#fafafa!important}.dp-excel-table .cell-filled{color:#000;text-shadow:0 0 1px rgba(255,255,255,.5)}.dp-excel-table .row-wochenende td{background-color:#f3f4f6!important;color:#9ca3af}.dp-excel-table .row-feiertag td{background-color:#ffe6e6!important}.dp-cell-selected{outline:3px solid var(--dp-warning)!important;outline-offset:-3px;z-index:1;position:relative}.dp-stat-tabs{display:flex;gap:.25rem;padding:0 1rem;border-bottom:2px solid var(--dp-border);background:var(--dp-bg-primary)}.dp-stat-tab{padding:.5rem 1rem;border:none;background:none;font-size:.8125rem;font-weight:500;color:var(--dp-text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}.dp-stat-tab:hover{color:var(--dp-text-primary);background:var(--dp-bg-hover)}.dp-stat-tab.active{color:var(--dp-chrome);border-bottom-color:var(--dp-chrome)}.dp-stat-content{padding:1rem}.dp-stat-kpi-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:.75rem;margin-bottom:1rem}.dp-stat-kpi-card{background:var(--dp-bg-primary);border:1px solid var(--dp-border);border-radius:var(--dp-radius-md);padding:.75rem 1rem;text-align:center}.dp-stat-kpi-value{font-size:1.75rem;font-weight:700;color:var(--dp-text-primary);line-height:1.2}.dp-stat-kpi-label{font-size:.8125rem;color:var(--dp-text-muted);margin-top:.25rem}.dp-saldo-ok{color:var(--dp-success)}.dp-saldo-warn{color:var(--dp-warning)}.dp-saldo-danger{color:var(--dp-danger);font-weight:600}.dp-tabs{display:flex;gap:0;border-bottom:2px solid var(--dp-border);margin-bottom:1.5rem}.dp-tab{padding:.75rem 1.25rem;border:none;background:none;font-size:.875rem;font-weight:500;color:var(--dp-text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--dp-transition)}.dp-tab:hover{color:var(--dp-text-primary);background-color:var(--dp-bg-hover)}.dp-tab.active{color:var(--dp-text-primary);border-bottom-color:var(--dp-warning);font-weight:600}.dp-color-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.15);vertical-align:middle;margin-right:6px}@media(max-width:1400px){.dp-excel-table{font-size:10px}.dp-excel-table .header-spalten th{font-size:9px;min-width:30px}.dp-excel-table td{padding:2px 3px;height:20px}}@media(max-width:767px){.dp-page-header{flex-direction:column}.dp-toolbar{flex-direction:column;align-items:stretch}}.calendar-container{font-family:inherit;background-color:#fff;padding:30px;border-radius:12px;max-width:700px;margin:40px auto 0;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.calendar-logo{height:50px}.calendar-status{text-align:right}.calendar-status span{font-weight:600}.calendar-status .aktiv{color:#059669}.calendar-status .inaktiv{color:#dc2626}.disconnect-button{margin-top:10px;background-color:#e5e7eb;color:#6b7280;padding:9px 18px;border-radius:10px;border:none;font-weight:500;cursor:not-allowed;font-family:inherit;font-size:14px;transition:all .15s ease}.disconnect-button:enabled{background-color:#dc2626;color:#fff;cursor:pointer}.disconnect-button:enabled:hover{background-color:#b91c1c}.calendar-form{display:flex;flex-direction:column;gap:15px}.calendar-form input{padding:9px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px}.connect-button{margin-top:10px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);padding:9px 18px;border:none;border-radius:10px;font-weight:500;font-size:14px;font-family:inherit;cursor:pointer;transition:all .15s ease}.connect-button:hover{background-color:var(--primary-blue-hover, #3b5de7)}.connect-button:disabled{background-color:#e5e7eb;color:#9ca3af;cursor:not-allowed;opacity:.5}.calendar-title{margin:0 0 .5rem;font-size:17px;font-weight:600}.calendar-description{margin:0 0 1rem;color:#6b7280;font-size:14px}.calendar-error{padding:8px 12px;margin-bottom:12px;background:#fef2f2;color:#dc2626;border-radius:10px}.calendar-filters{display:flex;gap:1rem;margin-bottom:1rem;align-items:center}.calendar-filters label{display:flex;align-items:center;gap:.25rem}.calendar-filters input[type=date]{padding:6px 8px;border:1px solid #e5e7eb;border-radius:8px}.calendar-form-add h3,.calendar-list h3{margin:1rem 0 .5rem;font-size:1rem;font-weight:600}.calendar-form-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.calendar-form-row input[type=date],.calendar-form-row input[type=text],.calendar-form-row select{padding:9px 12px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px}.calendar-form-row button{padding:9px 18px;background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.calendar-form-row button:hover{background:var(--primary-blue-hover, #3b5de7)}.calendar-form-row button:disabled{opacity:.5;cursor:not-allowed}.calendar-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;margin-top:8px;border:1px solid #e5e7eb}.calendar-table th,.calendar-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6}.calendar-table th{font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.05em;background:#f9fafb;color:#6b7280;border-bottom:2px solid #e5e7eb}.calendar-table td{font-size:14px;color:#374151}.calendar-delete-btn{padding:6px 12px;font-size:13px;background:#f3f4f6;color:#374151;border:none;border-radius:8px;cursor:pointer;font-family:inherit;transition:all .15s ease}.calendar-delete-btn:hover{background:#fef2f2;color:#dc2626}.calendar-actions{margin-bottom:1rem}.calendar-btn{padding:9px 18px;border-radius:10px;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.calendar-btn:hover{background:#e5e7eb}.calendar-btn.primary{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border-color:var(--primary-blue, #4f6ef7)}.calendar-btn.primary:hover{background:var(--primary-blue-hover, #3b5de7)}.calendar-step{margin-top:1rem}.calendar-step h3{margin:0 0 1rem;font-size:1rem;font-weight:600}.calendar-type-list{list-style:none;padding:0;margin:0 0 1rem}.calendar-type-list li{padding:6px 0}.calendar-type-list label{display:flex;align-items:center;gap:8px;cursor:pointer}.calendar-step-actions{display:flex;gap:10px;margin-top:1rem}.calendar-step-actions button{padding:9px 18px;border-radius:10px;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.calendar-step-actions button:hover{background:#e5e7eb}.calendar-step-actions button.primary{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border-color:var(--primary-blue, #4f6ef7)}.calendar-step-actions button.primary:hover{background:var(--primary-blue-hover, #3b5de7)}.calendar-week-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}.calendar-week-nav button{padding:6px 12px;border:1px solid #e5e7eb;border-radius:10px;background:#f3f4f6;cursor:pointer;font-family:inherit;font-size:14px;transition:all .15s ease}.calendar-week-nav button:hover{background:#e5e7eb}.calendar-slots-grid{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px}.calendar-day-col{min-width:90px;border:1px solid #e5e7eb;border-radius:10px;padding:8px}.calendar-day-header{font-weight:600;font-size:12px;margin-bottom:8px;text-align:center;color:#6b7280;text-transform:uppercase;letter-spacing:.05em}.calendar-slot-cell{display:block;width:100%;padding:6px 8px;margin-bottom:4px;font-size:12px;border:1px solid #e5e7eb;border-radius:8px;background:#eff6ff;cursor:pointer;text-align:center;transition:all .15s ease}.calendar-slot-cell:hover{background:#dbeafe}.calendar-slot-cell.selected{background:var(--primary-blue, #4f6ef7);color:#fff;border-color:var(--primary-blue, #4f6ef7)}.calendar-no-slots{font-size:12px;color:#9ca3af;display:block;text-align:center}.calendar-summary{margin:0 0 1rem;padding:8px 12px;background:#f9fafb;border-radius:10px;font-size:14px}.terminarten-config{font-family:inherit;background-color:#fff;padding:24px;border-radius:12px;max-width:900px;margin:0 auto;box-shadow:0 1px 3px #0000000f,0 1px 2px #0000000a}.terminarten-config h2{margin-top:0;margin-bottom:8px;font-size:17px;font-weight:600}.terminarten-description{color:#6b7280;margin-bottom:20px;font-size:14px}.terminarten-error{background:#fef2f2;color:#dc2626;padding:10px 12px;border-radius:10px;margin-bottom:16px;font-size:14px}.terminarten-actions{margin-bottom:20px;display:flex;gap:12px;flex-wrap:wrap}.terminarten-btn{padding:9px 18px;border-radius:10px;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.terminarten-btn:hover{background:#e5e7eb}.terminarten-btn.primary{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border-color:var(--primary-blue, #4f6ef7)}.terminarten-btn.primary:hover{background:var(--primary-blue-hover, #3b5de7)}.terminarten-btn.secondary{background:#f3f4f6;color:#374151}.terminarten-btn.secondary:hover:not(:disabled){background:#e5e7eb}.terminarten-btn.small{padding:6px 12px;font-size:13px;border-radius:8px}.terminarten-btn.danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}.terminarten-btn.danger:hover{background:#dc2626;color:#fff;border-color:#dc2626}.terminarten-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;border:1px solid #e5e7eb}.terminarten-table th,.terminarten-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6}.terminarten-table th{font-weight:600;font-size:12px;color:#6b7280;background:#f9fafb;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb}.terminarten-table td{font-size:14px;color:#374151}.terminarten-table tr:last-child td{border-bottom:none}.terminarten-table tr:hover td{background-color:#f9fafb}.terminarten-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.terminarten-modal{background:#fff;padding:32px;border-radius:20px;max-width:480px;width:90%;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014}.terminarten-modal h3{margin-top:0;margin-bottom:16px;font-weight:600}.terminarten-modal label{display:block;margin-top:12px;margin-bottom:4px;font-weight:500;font-size:13px;color:#374151}.terminarten-modal input,.terminarten-modal select{width:100%;padding:9px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box;font-family:inherit}.terminarten-modal-actions{margin-top:24px;display:flex;gap:10px;justify-content:flex-end}.terminarten-modal-actions button{padding:9px 18px;border-radius:10px;border:1px solid #e5e7eb;background:#f3f4f6;cursor:pointer;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease;color:#374151}.terminarten-modal-actions button:hover{background:#e5e7eb}.terminarten-modal-actions button.danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}.terminarten-modal-actions button.danger:hover{background:#dc2626;color:#fff}.terminarten-modal-actions button:first-child:not(.danger){background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border-color:var(--primary-blue, #4f6ef7)}.terminarten-modal-actions button:first-child:not(.danger):hover{background:var(--primary-blue-hover, #3b5de7)}.status-online{color:#059669;font-weight:600;font-size:13px}.status-offline{color:#9ca3af;font-weight:600;font-size:13px}.status-deactivating{color:#dc2626;font-weight:600;font-size:13px}.status-ready{color:#2563eb;font-weight:600;font-size:13px}.status-failed{color:#dc2626;font-weight:600;font-size:13px}.delete-terminal-btn{padding:6px 12px;background-color:#fef2f2;color:#dc2626;border:1px solid #fecaca;cursor:pointer;border-radius:8px;font-size:13px;font-weight:500;font-family:inherit;transition:all .15s ease}.delete-terminal-btn:hover{background-color:#dc2626;color:#fff;border-color:#dc2626}.add-terminal-btn{margin-bottom:16px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.add-terminal-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-terminal-btn:active{transform:scale(.98)}.modal{display:flex;position:fixed;z-index:1000;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);justify-content:center;align-items:center;animation:modal-fade-in .15s ease-out}.modal-content{background-color:#fff;padding:28px;border-radius:20px;width:420px;max-width:90vw;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;animation:modal-slide-up .2s ease-out}.modal-content label{margin-top:12px;font-weight:500;font-size:13px;color:#374151}.modal-content input{padding:9px 12px;margin-top:6px;border:1px solid #e5e7eb;border-radius:10px;font-size:14px;background:#f9fafb;font-family:inherit;transition:border-color .15s ease,box-shadow .15s ease}.modal-content input:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent);outline:none}.terminal-key{font-size:16px;font-weight:600;font-family:JetBrains Mono,ui-monospace,monospace;color:#111827;background-color:#f3f4f6;padding:12px;text-align:center;border-radius:10px;margin-top:12px;border:1px solid #e5e7eb;letter-spacing:.05em}.modal-content button{margin-top:14px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff);border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.modal-content button:hover{background-color:var(--primary-blue-hover, #3b5de7)}.modal-content button:disabled{background-color:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed!important}.close{align-self:flex-end;font-size:22px;cursor:pointer;color:#9ca3af;background:none;border:none;padding:4px 8px;border-radius:8px;transition:all .15s ease;line-height:1}.close:hover{color:#374151;background:#f3f4f6}.error-text{color:#dc2626;margin-top:8px;font-size:13px}.switch{display:flex;align-items:center;gap:10px;cursor:pointer}.switch input{display:none}.slider{position:relative;width:40px;height:20px;background-color:#9ca3af;border-radius:10px;transition:background-color .3s}.slider:before{content:"";position:absolute;width:18px;height:18px;background-color:#fff;border-radius:50%;top:1px;left:2px;transition:transform .3s}input:checked+.slider{background-color:#059669}input:checked+.slider:before{transform:translate(18px)}.status-label{font-weight:600;color:#9ca3af;transition:color .3s}input:checked~.status-label{color:#059669}.opening-hours-table input[type=time]{width:100px;padding:9px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box}.opening-hours-table input[type=number]{width:60px;padding:9px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box}input[type=time]:disabled,input[type=number]:disabled{background-color:#f3f4f6;border:1px solid #e5e7eb;cursor:not-allowed}.save-opening-hours-btn{margin-top:20px;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);font-size:14px;font-weight:500;font-family:inherit;border:none;border-radius:10px;cursor:pointer;transition:all .15s ease}.save-opening-hours-btn:hover{background-color:var(--primary-blue-hover, #3b5de7)}.save-opening-hours-btn:active{transform:scale(.98)}.save-opening-hours-btn:focus{outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent)}.settings-page{position:relative}.save-success-snackbar{margin-top:10px;background-color:#059669;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:500;text-align:center;max-width:300px}@keyframes fadein{0%{opacity:0;bottom:20px}to{opacity:1;bottom:30px}}@keyframes fadeout{0%{opacity:1;bottom:30px}to{opacity:0;bottom:20px}}.save-error-snackbar{margin-top:10px;background-color:#dc2626;color:#fff;padding:10px 16px;border-radius:10px;font-size:14px;font-weight:500;text-align:center;max-width:300px}.tooltip-icon-opening-hours{display:inline-block;margin-left:6px;width:22px;height:22px;color:var(--button-text-color);border-radius:50%;text-align:center;font-size:13px;line-height:18px;font-weight:600;cursor:help}.settings-page{position:relative;background:#fff;padding:20px;min-height:100vh;display:flex;flex-direction:column;align-items:center}#terminal-pages{width:100%;max-width:900px;margin-bottom:80px}.terminal-page{position:relative;border:1px solid #e5e7eb;padding:20px;margin-bottom:15px;background-color:#f9fafb;border-radius:12px;transition:all .3s ease;width:100%}.page-title{font-size:17px;font-weight:600;margin-bottom:15px;cursor:text;background:#fff;padding:10px;border-radius:10px;outline:none;text-align:center}.delete-page-btn{position:absolute;top:10px;right:10px;background:none;border:none;color:#9ca3af;font-size:16px;cursor:pointer;opacity:.7;transition:all .15s ease}.delete-page-btn:hover{color:#dc2626;opacity:1}.tile-container{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}.tile-wrapper{display:flex;align-items:center;justify-content:center;position:relative}.delete-tile-btn{position:absolute;top:5px;right:5px;background:none;border:none;color:#9ca3af;font-size:16px;cursor:pointer;opacity:.7;transition:all .15s ease}.delete-tile-btn:hover{opacity:1;color:#dc2626}.tile{position:relative;background-color:#fff;color:#111827;border:1px solid #e5e7eb;border-radius:10px;width:400px;height:50px;display:flex;align-items:center;justify-content:center;text-align:center;padding:10px 40px;font-size:14px;word-wrap:break-word;overflow-wrap:break-word;transition:all .15s ease}.tile-text{flex-grow:1;text-align:center;cursor:text}.add-tile,.add-page{display:block;margin-top:15px;padding:9px 18px;border:none;cursor:pointer;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease;width:100%;max-width:250px;text-align:center}.add-tile:hover,.add-page:hover{background-color:var(--primary-blue-hover, #3b5de7)}.add-tile:active,.add-page:active{transform:scale(.98)}.separator{width:100%;border:1px solid #e5e7eb;margin:30px 0}.save-terminal{display:block;margin:0 auto;padding:9px 18px;background-color:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);font-size:14px;font-weight:500;font-family:inherit;border:none;cursor:pointer;border-radius:10px;transition:all .15s ease}.save-terminal:hover{background-color:var(--primary-blue-hover, #3b5de7)}.save-terminal:active{transform:scale(.98)}.delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000}.delete-modal{background:#fff;padding:32px;border-radius:20px;text-align:center;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;min-width:300px}.delete-modal p{font-size:14px;color:#374151;margin-bottom:24px;line-height:1.6}.confirm-delete{background:#dc2626;color:#fff;padding:9px 18px;border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;margin-right:10px;transition:all .15s ease}.confirm-activate{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, white);padding:9px 18px;border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;margin-right:10px;transition:all .15s ease}.confirm-delete:hover{background:#b91c1c}.confirm-activate:hover{background:var(--primary-blue-hover, #3b5de7)}.cancel-delete{background:#f3f4f6;color:#374151;padding:9px 18px;border:none;cursor:pointer;border-radius:10px;font-size:14px;font-weight:500;font-family:inherit;transition:all .15s ease}.cancel-delete:hover{background:#e5e7eb}.save-success-snackbar{margin-top:15px;background-color:#059669;color:#fff;padding:10px 16px;border-radius:10px;font-weight:500;font-size:14px;text-align:center;animation:fadeInOut 3s ease forwards}@keyframes fadeInOut{0%{opacity:0;transform:translateY(10px)}10%{opacity:1;transform:translateY(0)}90%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}html,body,#root{height:100%;width:100%;margin:0;padding:0;overflow:hidden}body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;flex-direction:column;height:100vh;color:#111827;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--primary-blue: #4f6ef7;--primary-blue-hover: #3b5de7;--button-text-color: white}.app-body{display:flex;width:100%;flex:1;overflow:hidden;min-height:0}.app-content{flex:1;padding:24px;overflow-y:auto;overflow-x:hidden;min-height:0;-webkit-overflow-scrolling:touch;background:#fff;position:relative}.container{display:flex;width:100%;flex:1;overflow:hidden;min-height:0}.content{flex-grow:1;padding:24px;overflow:auto;min-height:0;-webkit-overflow-scrolling:touch;position:relative}.fullscreen-loader{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:#fff;display:flex;justify-content:center;align-items:center;z-index:9999}.spinner{width:40px;height:40px;border:3px solid #e5e7eb;border-top:3px solid var(--primary-blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.confirm-image{width:64px;height:64px;object-fit:cover;object-position:center top;border-radius:14px;margin-bottom:16px}table,.opening-hours-table,.terminal-table,.user-table{width:100%;border-collapse:separate;border-spacing:0;border-radius:12px;overflow:hidden;margin-top:16px;font-family:inherit;border:1px solid #e5e7eb}table th,.opening-hours-table th,.terminal-table th,.user-table th{background-color:#f9fafb;color:#6b7280;padding:10px 14px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e5e7eb;border-right:none}table td,.opening-hours-table td,.terminal-table td,.user-table td{padding:10px 14px;text-align:left;border-bottom:1px solid #f3f4f6;border-right:none;font-size:14px;color:#374151}table th:last-child,table td:last-child,.opening-hours-table th:last-child,.opening-hours-table td:last-child,.terminal-table th:last-child,.terminal-table td:last-child,.user-table th:last-child,.user-table td:last-child{border-right:none}table tr:last-child td,.opening-hours-table tr:last-child td,.terminal-table tr:last-child td,.user-table tr:last-child td{border-bottom:none}table tr:hover td,.opening-hours-table tr:hover td,.terminal-table tr:hover td,.user-table tr:hover td{background-color:#f9fafb}table tr:nth-child(2n),.opening-hours-table tr:nth-child(2n),.terminal-table tr:nth-child(2n),.user-table tr:nth-child(2n){background-color:transparent}.module-container{display:flex;flex-direction:column;width:100%;min-height:100%;background:#fff;color:#111827}.module-main{flex:1;min-height:0;width:100%;padding:1.25rem 0;overflow-y:auto}.page-loader{display:flex;justify-content:center;align-items:center;padding:2rem 0}.page-loader-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#ffffffe6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:1000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-size:14px;color:#6b7280}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000;animation:modal-fade-in .15s ease-out}.modal-panel{background:#fff;color:#111827;padding:32px;border-radius:20px;width:400px;max-width:90vw;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;text-align:center;animation:modal-slide-up .2s ease-out}.modal-text{font-size:14px;color:#374151;line-height:1.6;margin:0 0 24px}.modal-actions{display:flex;justify-content:center;gap:10px}.modal-btn{padding:9px 20px;font-weight:500;font-size:14px;border:none;border-radius:10px;cursor:pointer;font-family:inherit;transition:all .15s ease}.modal-btn-primary{background-color:var(--primary-blue);color:var(--button-text-color)}.modal-btn-primary:hover{background-color:var(--primary-blue-hover)}.modal-btn-secondary{background-color:#f3f4f6;color:#374151}.modal-btn-secondary:hover{background-color:#e5e7eb}.modal-btn-danger{background-color:#dc2626;color:#fff}.modal-btn-danger:hover{background-color:#b91c1c}@keyframes modal-fade-in{0%{opacity:0}to{opacity:1}}@keyframes modal-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.delete-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:#0006;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:center;z-index:2000}.delete-modal{background:#fff;color:#111827;padding:32px;border-radius:20px;width:400px;max-width:90vw;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;text-align:center}.confirm-delete{background-color:#dc2626;color:#fff;padding:9px 20px;border:none;border-radius:10px;font-weight:500;font-size:14px;cursor:pointer;font-family:inherit;margin:4px}.cancel-delete{background-color:#f3f4f6;color:#374151;padding:9px 20px;border:none;border-radius:10px;font-weight:500;font-size:14px;cursor:pointer;font-family:inherit;margin:4px}img{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}.no-image-actions,.no-image-actions *{pointer-events:none!important;-webkit-user-select:none!important;user-select:none!important;-webkit-user-drag:none!important;-webkit-touch-callout:none!important}/*! tailwindcss v4.2.2 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--spacing:.25rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--radius-sm:.375rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-success:#059669;--color-warning:#d97706}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.shrink{flex-shrink:1}.grow{flex-grow:1}.rotate-90{rotate:90deg}.rotate-180{rotate:180deg}.rotate-270{rotate:270deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform\!{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)!important}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.break-all{word-break:break-all}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter\!{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes skeleton-pulse{0%,to{opacity:1}50%{opacity:.4}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}input[type=text],input[type=email],input[type=password],input[type=number],input[type=date],input[type=time],input[type=tel],input[type=url],input[type=search],select,textarea{font-family:inherit;font-size:14px;color:#111827;background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;padding:9px 12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;width:100%;box-sizing:border-box}input::placeholder,textarea::placeholder{color:#9ca3af}input:focus,select:focus,textarea:focus{background:#fff;border-color:var(--primary-blue, #4f6ef7);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-blue, #4f6ef7) 10%,transparent)}input:disabled,select:disabled,textarea:disabled{background:#f3f4f6;color:#9ca3af;cursor:not-allowed}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:32px}textarea{resize:vertical;min-height:80px;line-height:1.5}label{font-size:13px;font-weight:500;color:#374151;display:block;margin-bottom:4px}button{font-family:inherit}.btn,.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:500;font-family:inherit;border:none;border-radius:10px;cursor:pointer;transition:all .15s ease;text-decoration:none;line-height:1.4;white-space:nowrap}.btn:active,.primary-button:active,.secondary-button:active{transform:scale(.98)}.btn-primary,.primary-button{background:var(--primary-blue, #4f6ef7);color:var(--button-text-color, #ffffff)}.btn-primary:hover,.primary-button:hover{background:var(--primary-blue-hover, #3b5de7)}.btn-secondary,.secondary-button{background:#f3f4f6;color:#374151;border:1px solid #e5e7eb}.btn-secondary:hover,.secondary-button:hover{background:#e5e7eb;color:#111827}.btn-danger,.danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:500;font-family:inherit;border:none;border-radius:10px;cursor:pointer;transition:all .15s ease;background:#dc2626;color:#fff}.btn-danger:hover,.danger-button:hover{background:#b91c1c}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:500;font-family:inherit;border:none;border-radius:10px;cursor:pointer;transition:all .15s ease;background:transparent;color:#6b7280}.btn-ghost:hover{background:#f3f4f6;color:#111827}.btn:disabled,.primary-button:disabled,.secondary-button:disabled,.danger-button:disabled,.btn-ghost:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-sm{padding:6px 12px;font-size:13px;border-radius:8px}input[type=checkbox]{width:16px;height:16px;border-radius:4px;border:1px solid #d1d5db;accent-color:var(--primary-blue, #4f6ef7);cursor:pointer}.form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:14px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:560px){.form-row{grid-template-columns:1fr}}
