.modal-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid #ddd}.modal-header h2{margin:0}.modal-header .close-modal{cursor:pointer;width:24px;height:24px;line-height:24px;text-align:center;font-size:24px;font-weight:700;color:#333;background-color:transparent;border:none}
.modal-footer{padding:20px;border-top:1px solid #ddd;text-align:right}.modal-footer .btn:not(:last-child){margin-right:20px}.modal-buttons-left{text-align:left}.modal-buttons-center{text-align:center}.modal-buttons-right{text-align:right}
.modal-container{position:fixed;top:0;left:0;width:100%;height:100%;display:none;align-items:center;justify-content:center;z-index:1000;background:rgba(0,0,0,.5)}.modal-container.show-modal{display:flex}.modal{position:relative;background:#fff;max-width:70%;max-height:70%;overflow:auto;display:flex;flex-direction:column;border-radius:6px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.modal-header{padding:20px;border-bottom:1px solid #ddd;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0}.modal-header .close-modal{cursor:pointer;width:24px;height:24px;line-height:24px;text-align:center;background-color:transparent;border:none;font-size:24px;font-weight:700;color:#333}.modal-body{padding:20px;flex-grow:1}.default-modal-size .modal{min-width:500px;min-height:300px;padding:10px;}.modal-footer{padding:20px;border-top:1px solid #ddd;text-align:right}.modal-footer .btn:not(:last-child){margin-right:20px}.modal-buttons-left{text-align:left}.modal-buttons-center{text-align:center}.modal-buttons-right{text-align:right}
body.modal-open{overflow:hidden;pointer-events:none}.modal-container{pointer-events:auto}

/* Dark Mode Support */
[data-theme="dark"] .modal {
    background: #1e1e1e;
    color: #e0e0e0;
}

[data-theme="dark"] .modal-header {
    border-bottom-color: #444;
}

[data-theme="dark"] .modal-header .close-modal {
    color: #e0e0e0;
}

[data-theme="dark"] .modal-body {
    color: #e0e0e0;
}

[data-theme="dark"] .modal-body p {
    color: #e0e0e0;
}

[data-theme="dark"] .modal-footer {
    border-top-color: #444;
}