._loader_104v2_1{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;font-family:sans-serif;background:#4caf50;width:100%;position:absolute}._spinner_104v2_12{width:50px;height:50px;border:6px solid #ddd;border-top-color:#4caf50;border-radius:50%;animation:_spin_104v2_12 1s linear infinite}@keyframes _spin_104v2_12{to{transform:rotate(360deg)}}:root{--primary-color: #2d6cdf;--secondary-color: #f5f5f5;--border-radius: 8px}[data-theme=dark]{--primary-color: #1a1a1a;--text-color: #fff}.container{min-height:100vh}.modal-backdrop{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease forwards}.modal-backdrop.closing{animation:fadeOut .3s ease forwards}.modal-container{background:#fff;border-radius:12px;width:100%;height:100%;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;overflow:hidden;transform:translate(30px);opacity:0;animation:slideIn .3s ease forwards}.modal-container.closing{animation:slideOut .3s ease forwards}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee;background-color:#f9fafb}.modal-title{font-size:1.125rem;font-weight:600;color:#111827}.modal-close{display:none;background:transparent;border:none;font-size:1.25rem;cursor:pointer;color:#6b7280}.modal-back{background:transparent;border:none;font-size:1.25rem;cursor:pointer;color:#6b7280}.modal-body{padding:20px;color:#374151;flex:1}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #eee;background-color:#f9fafb}button{padding:.75rem;background:#66a6ff!important;border:none;border-radius:8px;color:#fff;font-size:1rem;cursor:pointer;transition:background .2s;display:flex;justify-content:center;align-items:center}@media (min-width: 640px){.modal-container{width:90%;max-width:800px;height:auto;margin:auto}.modal-close{display:block}.modal-back{display:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideIn{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOut{0%{transform:translate(0);opacity:1}to{transform:translate(30px);opacity:0}}*{margin:0;padding:0;box-sizing:border-box}ul,ol{list-style:none}a{text-decoration:none;color:inherit}img{max-width:100%;height:auto;display:block}button,input{font:inherit;border:none;background:none}
