.modal-dialog-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center;z-index:999999;opacity:0;transition:opacity .3s ease;color:#1a202c;font-family:Roboto,system-ui,-apple-system,Segoe UI,sans-serif}.modal-dialog-overlay.modal-dialog-show{opacity:1}.modal-dialog-container{position:relative;background:#ffffff;border:none;border-radius:12px;box-shadow:0 4px 20px rgba(0,0,0,.15);width:min(500px,90vw);padding:60px 40px 40px;transform:scale(.9);transition:transform .3s ease;color:#1a202c}.modal-dialog-container--interactive{position:absolute;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);overflow:visible;transform:none;display:flex;flex-direction:column}.modal-dialog-container--draggable{cursor:move;-webkit-user-select:none;user-select:none}.modal-dialog-container--draggable .modal-dialog-body,.modal-dialog-container--draggable .modal-dialog-buttons,.modal-dialog-container--draggable .modal-dialog-content{cursor:default;-webkit-user-select:text;user-select:text}.modal-dialog-container--interactive .modal-dialog-content{display:flex;flex-direction:column;min-height:0;max-height:100%;overflow:visible}.modal-dialog-container--interactive .modal-dialog-body{flex:1 1 auto;min-height:0;max-height:none;overflow:auto}.modal-dialog-container--interactive .modal-dialog-buttons{flex-shrink:0}.modal-dialog-container--resizable{min-width:340px;min-height:220px}.modal-dialog-container--wide{max-width:1040px;width:95vw}.modal-dialog-container--content{padding:40px 40px 32px}.modal-dialog-container--content .modal-dialog-title{margin-top:0}.modal-dialog-container--wide .modal-dialog-content,.modal-dialog-container--wide .modal-dialog-message{text-align:left}.modal-dialog-container--wide .modal-dialog-buttons{justify-content:flex-end}.modal-dialog-body{text-align:left;max-height:55vh;overflow-y:auto;overflow-x:hidden;margin:12px 0 4px;scrollbar-gutter:stable;color:#1f2937}.modal-dialog-body::-webkit-scrollbar{width:6px}.modal-dialog-body::-webkit-scrollbar-track{background:#f0f0f1;border-radius:4px}.modal-dialog-body::-webkit-scrollbar-thumb{background:#8c8f94;border-radius:4px}.modal-dialog-body::-webkit-scrollbar-thumb:hover{background:#646970}.modal-dialog-overlay.modal-dialog-show .modal-dialog-container{transform:scale(1)}.modal-dialog-overlay.modal-dialog-show .modal-dialog-container--interactive{transform:none}.modal-dialog-close{position:absolute;top:10px;right:10px;width:28px;height:28px;border:0;border-radius:999px;background:transparent;color:#646970;font-size:20px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;z-index:2}.modal-dialog-close-icon{display:block;flex:0 0 auto;pointer-events:none}.modal-dialog-close:focus-visible,.modal-dialog-close:hover{background:#f0f0f1;color:#1d2327;outline:none}.modal-dialog-resize-handle{position:absolute;right:8px;bottom:8px;width:16px;height:16px;cursor:nwse-resize;border-radius:2px;background:linear-gradient(135deg,transparent 0 50%,#d0d3d6 50% 54%,transparent 54% 100%),linear-gradient(135deg,transparent 0 58%,#b8bcc1 58% 62%,transparent 62% 100%),linear-gradient(135deg,transparent 0 66%,#9ea3a8 66% 70%,transparent 70% 100%);opacity:.95}.modal-dialog-icon{position:absolute;top:-40px;left:50%;transform:translateX(-50%);width:80px;height:80px;border-radius:50%;font-size:42px;font-weight:700;color:#ffffff;box-shadow:0 2px 8px rgba(0,0,0,.1)}.modal-dialog-icon,.modal-dialog-icon span{display:flex;align-items:center;justify-content:center;line-height:1}.modal-icon-peach{background:#ff9a76}.modal-icon-blue{background:#4a90e2}.modal-icon-orange{background:#ff9500}.modal-icon-red{background:#dc3545}.modal-icon-green{background:#28a745}.modal-dialog-content{text-align:center}.modal-dialog-title{margin:0 0 16px;font-size:24px;font-weight:600;color:#1a202c;line-height:1.3}.modal-dialog-message{margin:0 0 24px;font-size:15px;color:#4a5568;line-height:1.6;white-space:pre-wrap}.modal-warning-box{background:#eff6ff;border-left:4px solid #60a5fa;border-radius:6px;padding:16px;margin-bottom:24px;display:flex;align-items:flex-start;text-align:left}.modal-warning-box--error{background:#fff1f2;border-left-color:#e11d48}.modal-warning-icon{font-size:24px;color:#2563eb;margin-right:12px;flex-shrink:0}.modal-warning-box--error .modal-warning-icon{color:#e11d48;font-weight:700}.modal-warning-text{font-size:14px;color:#1f2937;line-height:1.45}.modal-warning-title{display:inline;margin-right:6px;font-weight:600;color:#1e3a8a}.modal-warning-box--error .modal-warning-title{color:#9f1239}.modal-warning-message{color:#1f2937}.modal-dialog-buttons{display:flex;flex-direction:row;flex-wrap:nowrap;gap:12px;justify-content:center;align-items:center;margin-top:24px}.modal-dialog-buttons--right{justify-content:flex-end}.modal-btn{padding:12px 24px;font-size:15px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:0;flex:0 1 auto;white-space:nowrap}.modal-btn:focus-visible{outline:2px solid #4a90e2;outline-offset:2px}.modal-btn-cancel{background:transparent;color:#718096;border:1px solid #e2e8f0}.modal-btn-cancel:hover{background:#f7fafc;border-color:#cbd5e0;color:#4a5568}.modal-btn-confirm,.modal-btn-single{color:#ffffff;box-shadow:0 1px 3px rgba(0,0,0,.12)}.modal-btn-peach{background:#ff9a76}.modal-btn-peach:hover{background:#ff8561;transform:translateY(-1px);box-shadow:0 2px 6px rgba(255,154,118,.3)}.modal-btn-blue{background:#4a90e2}.modal-btn-blue:hover{background:#357abd;transform:translateY(-1px);box-shadow:0 2px 6px rgba(74,144,226,.3)}.modal-btn-orange{background:#ff9500}.modal-btn-orange:hover{background:#e68600;transform:translateY(-1px);box-shadow:0 2px 6px rgba(255,149,0,.3)}.modal-btn-red{background:#dc3545}.modal-btn-red:hover{background:#c82333;transform:translateY(-1px);box-shadow:0 2px 6px rgba(220,53,69,.3)}.modal-btn-green{background:#28a745}.modal-btn-green:hover{background:#218838;transform:translateY(-1px);box-shadow:0 2px 6px rgba(40,167,69,.3)}.modal-dialog-container:has(.modal-btn-cancel){width:min(560px,92vw)}@media (max-width:520px){.modal-dialog-container{padding:56px 20px 24px;width:95%}.modal-dialog-title{font-size:20px}.modal-dialog-message{font-size:14px}.modal-dialog-buttons{gap:8px}.modal-btn{padding:10px 14px;font-size:14px;white-space:normal;text-align:center}}