@keyframes rotate_icon{to{-webkit-transform:rotate(1turn);-ms-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes rotate_icon{to{-webkit-transform:rotate(1turn);-ms-transform:rotate(1turn);-o-transform:rotate(1turn);transform:rotate(1turn)}}@-webkit-keyframes fl-x{0%{-webkit-transform:translateX(-20px);transform:translateX(-20px)}50%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}to{-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@keyframes fl-x{0%{-webkit-transform:translateX(-20px);transform:translateX(-20px)}50%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}to{-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@-webkit-keyframes fl-y{0%{-webkit-transform:translateY(-20px);transform:translateY(-20px)}50%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}to{-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fl-y{0%{-webkit-transform:translateY(-20px);transform:translateY(-20px)}50%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}to{-webkit-transform:translateY(-20px);transform:translateY(-20px)}}.animate-fl-x{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-name:fl-x;animation-name:fl-x;-webkit-animation-timing-function:linear;animation-timing-function:linear}.animate-fl-x,.animate-fl-y{-webkit-animation-duration:2s;animation-duration:2s}.animate-fl-y{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-name:fl-y;animation-name:fl-y;-webkit-animation-timing-function:linear;animation-timing-function:linear}@property --rotate{syntax:"<angle>";initial-value:132deg;inherits:false}.designbase-modal{display:none;height:100%;left:0;opacity:0;padding:16px;pointer-events:none;position:fixed;top:0;transition:opacity .2s ease;visibility:hidden;width:100%;z-index:var(--db-z-modal,100100)}.designbase-modal:not(.show):not(.is-open){display:none!important;pointer-events:none}.designbase-modal.is-open,.designbase-modal.show,.designbase-modal:target{display:block;opacity:1!important;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;visibility:visible}.designbase-modal.is-open>.designbase-modal__panel,.designbase-modal.is-open>.modal,.designbase-modal.show>.designbase-modal__panel,.designbase-modal.show>.modal,.designbase-modal:target>.designbase-modal__panel,.designbase-modal:target>.modal{display:flex!important;flex-direction:column}.designbase-modal .designbase-modal-overlay,.designbase-modal .designbase-modal__backdrop,.designbase-modal .dim{background:rgba(0,0,0,.5);height:100%;left:0;position:fixed;top:0;width:100%;z-index:0}.designbase-modal .modal,.designbase-modal__container,.designbase-modal__content,.designbase-modal__panel{background:var(--db-bg-primary);border-radius:var(--db-radius-m);box-shadow:var(--db-shadow-l,0 4px 20px rgba(0,0,0,.15));box-sizing:border-box;display:flex;flex-direction:column;left:50%;margin:0;max-height:min(92vh,100vh - 32px);max-width:calc(100vw - 32px);max-width:min(600px,100vw - 32px);overflow:hidden;position:fixed;top:50%;transform:translate(-50%,-50%);width:min(100%,100vw - 32px);z-index:1}.designbase-modal__header{align-items:center;display:flex;flex-shrink:0;justify-content:space-between;padding:var(--db-padding-s,8px)}.designbase-modal__header h3{color:var(--db-text-primary);font-size:var(--db-text-xl,18px);margin:0}.designbase-modal__header .close-button{align-items:center;background:none;border:none;border-radius:var(--db-radius-circle,50%);color:var(--db-text-secondary);cursor:pointer;display:flex;font-size:var(--db-text-2xl,24px);height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.designbase-modal__header .close-button:hover{background:var(--db-bg-secondary);color:var(--db-text-primary)}.designbase-modal__body{flex:1 1 auto;min-height:0;overflow-y:auto;padding:var(--db-padding-m)}.designbase-modal__actions{display:flex;flex-wrap:wrap;gap:var(--db-margin-s,8px);justify-content:flex-end}.designbase-modal__close{align-items:center;background:transparent;border:none;border-radius:var(--db-radius-circle,50%);color:var(--db-text-secondary);cursor:pointer;display:inline-flex;font-size:var(--db-text-2xl,24px);height:32px;justify-content:center;line-height:1;padding:0;position:absolute;right:var(--db-margin-s,8px);top:var(--db-margin-s,8px);transition:all .2s ease;width:32px}.designbase-modal__close:hover{background:var(--db-bg-secondary);color:var(--db-text-primary)}.designbase-modal__footer{border-top:1px solid var(--db-border-primary);display:flex;flex-shrink:0;gap:var(--db-margin-s,8px);justify-content:flex-end;padding:var(--db-padding-s,8px)}.designbase-modal__footer .modal-dismiss{flex-shrink:0}.designbase-modal--small .designbase-modal__container,.designbase-modal--small .designbase-modal__content,.designbase-modal--small .designbase-modal__panel,.designbase-modal--small .modal{max-width:min(360px,100vw - 32px)}.designbase-modal--narrow .designbase-modal__container,.designbase-modal--narrow .designbase-modal__content,.designbase-modal--narrow .designbase-modal__panel,.designbase-modal--narrow .modal{max-width:min(400px,100vw - 32px)}.designbase-modal--medium .designbase-modal__container,.designbase-modal--medium .designbase-modal__content,.designbase-modal--medium .designbase-modal__panel,.designbase-modal--medium .modal{max-width:min(600px,100vw - 32px)}.designbase-modal--large .designbase-modal__container,.designbase-modal--large .designbase-modal__content,.designbase-modal--large .designbase-modal__panel,.designbase-modal--large .modal{max-width:min(960px,100vw - 32px);width:min(960px,100vw - 32px)}.designbase-modal--full .designbase-modal__container,.designbase-modal--full .designbase-modal__content,.designbase-modal--full .designbase-modal__panel,.designbase-modal--full .modal{max-height:min(90vh,100vh - 32px);max-width:min(90vw,100vw - 32px)}.designbase-modal--fade-in{animation:modalFadeIn .3s ease-out}.designbase-modal--fade-out{animation:modalFadeOut .3s ease-in}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.9) translateY(-20px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes modalFadeOut{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(-20px)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.designbase-modal-scroll{max-height:60vh;overflow-y:auto;padding-right:10px}.designbase-modal-scroll::-webkit-scrollbar{width:6px}.designbase-modal-scroll::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.designbase-modal-scroll::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.designbase-modal-scroll::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.designbase-modal-form .form-section{margin-bottom:25px}.designbase-modal-form .form-section .section-title{border-bottom:1px solid #e1e1e1;color:#333;font-size:16px;font-weight:600;margin-bottom:15px;padding-bottom:8px}.designbase-modal-form .form-section .form-row{display:grid;gap:15px;grid-template-columns:1fr 1fr;margin-bottom:15px}@media(max-width:767px){.designbase-modal-form .form-section .form-row{grid-template-columns:1fr}}.designbase-modal-form .form-section .form-col{display:flex;flex-direction:column;gap:15px}.designbase-modal-form .form-actions{border-top:1px solid var(--db-border-primary);display:flex;gap:var(--db-margin-m,10px);justify-content:flex-end;margin-top:var(--db-margin-l,20px);padding-top:var(--db-margin-l,20px)}.designbase-modal-form .form-actions .button{min-width:100px}.designbase-confirm-modal .designbase-modal__content{max-width:400px;text-align:center}.designbase-confirm-modal .confirm-icon{color:var(--db-feedback-warning-fg);font-size:var(--db-text-4xl,48px);margin-bottom:var(--db-margin-m,15px)}.designbase-confirm-modal .confirm-title{color:var(--db-text-primary);font-size:var(--db-text-xl,18px);font-weight:var(--db-weight-semibold,600);margin-bottom:var(--db-margin-m,10px)}.designbase-confirm-modal .confirm-message{color:var(--db-text-secondary);line-height:var(--db-leading-relaxed,1.5);margin-bottom:var(--db-margin-l,20px)}.designbase-confirm-modal .confirm-actions{display:flex;gap:10px;justify-content:center}.designbase-confirm-modal .confirm-actions .button{min-width:80px}.designbase-loading-modal .designbase-modal__content{max-width:300px;text-align:center}.designbase-loading-modal .loading-spinner{animation:spin 1s linear infinite;border-top:3px solid var(--db-border-primary);border:3px solid var(--db-border-primary);border-radius:var(--db-radius-circle,50%);border-top-color:var(--db-brand-primary);height:40px;margin:0 auto var(--db-margin-m,15px);width:40px}.designbase-loading-modal .loading-text{color:var(--db-text-secondary);font-size:var(--db-text-s,14px)}.designbase-alert-modal .designbase-modal__content{max-width:400px}.designbase-alert-modal .alert-icon{font-size:var(--db-text-4xl,48px);margin-bottom:var(--db-margin-m,15px)}.designbase-alert-modal .alert-icon--success{color:var(--db-feedback-success-fg)}.designbase-alert-modal .alert-icon--error{color:var(--db-feedback-error-fg)}.designbase-alert-modal .alert-icon--warning{color:var(--db-feedback-warning-fg)}.designbase-alert-modal .alert-icon--info{color:var(--db-feedback-info-fg)}.designbase-alert-modal .alert-title{color:var(--db-text-primary);font-size:var(--db-text-xl,18px);font-weight:var(--db-weight-semibold,600);margin-bottom:var(--db-margin-m,10px)}.designbase-alert-modal .alert-message{color:var(--db-text-secondary);line-height:var(--db-leading-relaxed,1.5);margin-bottom:var(--db-margin-l,20px)}.designbase-modal-backdrop{backdrop-filter:blur(2px);background:rgba(0,0,0,.5);height:100%;left:0;position:fixed;top:0;width:100%;z-index:9998}.designbase-modal-stack{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}.designbase-modal-stack .designbase-modal{pointer-events:auto}body.designbase-dashboard-modal-open,body.designbase-modal-open,body.modal-open{overflow:hidden}@media(max-width:767px){.designbase-modal{padding:16px}.designbase-modal .modal,.designbase-modal__container,.designbase-modal__content,.designbase-modal__panel{border-radius:var(--db-radius-m);box-sizing:border-box;margin:0;max-height:min(92vh,100vh - 32px);max-width:calc(100vw - 32px);transform:translate(-50%,-50%);width:min(100%,100vw - 32px)}.designbase-modal__header{padding:15px 20px}.designbase-modal__body{padding:20px}.designbase-modal__footer{padding:15px 20px}.designbase-modal--full .designbase-modal__container,.designbase-modal--full .designbase-modal__content,.designbase-modal--full .designbase-modal__panel,.designbase-modal--full .modal,.designbase-modal--large .designbase-modal__container,.designbase-modal--large .designbase-modal__content,.designbase-modal--large .designbase-modal__panel,.designbase-modal--large .modal,.designbase-modal--medium .designbase-modal__container,.designbase-modal--medium .designbase-modal__content,.designbase-modal--medium .designbase-modal__panel,.designbase-modal--medium .modal,.designbase-modal--narrow .designbase-modal__container,.designbase-modal--narrow .designbase-modal__content,.designbase-modal--narrow .designbase-modal__panel,.designbase-modal--narrow .modal,.designbase-modal--small .designbase-modal__container,.designbase-modal--small .designbase-modal__content,.designbase-modal--small .designbase-modal__panel,.designbase-modal--small .modal{box-sizing:border-box;max-height:min(92vh,100vh - 32px);max-width:calc(100vw - 32px);width:min(100%,100vw - 32px)}}