.dialog-overlay{z-index:9999;background-color:#00000080;justify-content:center;align-items:center;padding:1rem;animation:.2s ease-in-out dialog-fade-in;display:flex;position:fixed;inset:0}@keyframes dialog-fade-in{0%{opacity:0}to{opacity:1}}.dialog-content{background-color:#fff;border-radius:.5rem;flex-direction:column;width:100%;animation:.2s ease-in-out dialog-slide-in;display:flex;box-shadow:0 10px 40px #0000004d}@keyframes dialog-slide-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.dialog-content-sm{max-width:400px}.dialog-content-md{max-width:600px}.dialog-content-lg{max-width:800px}.dialog-content-xl{max-width:1000px}.dialog-header{background-color:#f9fafb;border-bottom:1px solid #e5e7eb;border-radius:.5rem .5rem 0 0;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.dialog-header-title-wrap{align-items:center;gap:.75rem;min-width:0;display:flex}.dialog-title{color:#111827;margin:0;font-size:1.5rem;font-weight:700}.dialog-close-button{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;width:2rem;height:2rem;padding:0;font-size:2rem;line-height:1;transition:all .15s;display:flex}.dialog-close-button:hover{color:#111827;background-color:#e5e7eb}.dialog-close-button:focus{outline-offset:2px;outline:2px solid #3b82f6}.dialog-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;max-height:min(70vh,100vh - 12rem);padding:1.5rem;overflow-y:auto}.dialog-body.dialog-body-auto{flex:0 auto;max-height:none}.dialog-footer{background-color:#f9fafb;border-top:1px solid #e5e7eb;border-radius:0 0 .5rem .5rem;justify-content:flex-end;gap:.75rem;padding:1.5rem;display:flex}.dialog-button{font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;box-sizing:border-box;border:1px solid #0000;border-radius:.375rem;outline:none;justify-content:center;align-items:center;min-width:fit-content;padding:.625em 1.5rem;font-weight:500;line-height:1.25;transition:all .15s;display:inline-flex}.dialog-button:disabled{opacity:.5;cursor:not-allowed}.dialog-button:focus{outline-offset:2px;outline:2px solid #3b82f6}.dialog-button-primary{color:#fff;background-color:#059669;border-color:#059669}.dialog-button-primary:hover:not(:disabled){background-color:#047857;border-color:#047857}.dialog-button-primary:active:not(:disabled){background-color:#065f46}.dialog-button-secondary{color:#374151;background-color:#fff;border-color:#d1d5db}.dialog-button-secondary:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.dialog-button-secondary:active:not(:disabled){background-color:#e5e7eb}.dialog-button-danger{color:#fff;background-color:#dc2626;border-color:#dc2626}.dialog-button-danger:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c}.dialog-button-danger:active:not(:disabled){background-color:#991b1b}@media (max-width:768px){.dialog-overlay{padding:.5rem}.dialog-content{max-width:100%!important;max-height:95vh!important}.dialog-header{padding:1rem}.dialog-title{font-size:1.25rem}.dialog-body{padding:1rem}.dialog-footer{flex-direction:column-reverse;padding:1rem}.dialog-button{width:100%}}.dialog-body label{color:#374151;margin-bottom:.25rem;font-size:.875rem;font-weight:500;display:block}.dialog-body input[type=text],.dialog-body input[type=number],.dialog-body input[type=email],.dialog-body input[type=password],.dialog-body textarea,.dialog-body select{color:#111827;background-color:#fff;border:1px solid #d1d5db;border-radius:.375rem;width:100%;padding:.625rem .75rem;font-size:1rem;transition:border-color .15s}.dialog-body input[type=text]:focus,.dialog-body input[type=number]:focus,.dialog-body input[type=email]:focus,.dialog-body input[type=password]:focus,.dialog-body textarea:focus,.dialog-body select:focus{border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f61a}.dialog-body input[type=checkbox]{cursor:pointer;margin-right:.5rem}.dialog-body .form-group{margin-bottom:1rem}.dialog-body .form-row{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}@media (max-width:768px){.dialog-body .form-row{grid-template-columns:1fr}}.dialog-body.dialog-body-compact input[type=text],.dialog-body.dialog-body-compact input[type=number],.dialog-body.dialog-body-compact input[type=email],.dialog-body.dialog-body-compact input[type=password],.dialog-body.dialog-body-compact textarea,.dialog-body.dialog-body-compact select{padding:.5rem .75rem;font-size:.875rem}
