UNPKG

create-nexaui-electron

Version:

Create Nexa App - Tool untuk membuat aplikasi Nexa Electron

148 lines (127 loc) 3.12 kB
/* Mobile Modal Styles */ @media (max-width: 768px) { /* Struktur Dasar Modal */ .nx-modal-content { width: 90% !important; margin:auto; border-radius: 4px; box-shadow: 0 2px 10px rgba(0,0,0,0.1); transform: translateY(-20px); transition: transform 0.3s ease-in-out; margin-bottom:200px; } /* Modal Centered */ .nx-modal-centered .nx-modal-content { min-height: auto; height: auto; border-radius: 12px; margin: 1rem; width: calc(100% - 2rem) !important; max-height: 90vh; } /* Bottom Sheet Style */ .nx-modal-bottom-sheet .nx-modal-content { position: fixed; bottom: 0; border-radius: 16px; max-height: 90vh; transform: translateY(100%); transition: transform 0.3s ease-out; } .nx-modal-bottom-sheet.show .nx-modal-content { transform: translateY(0); } /* Header Optimizations */ .nx-modal-header { padding: 16px; min-height: 56px; } .nx-close { width: 40px; height: 40px; padding: 8px; } /* Body Optimizations */ .nx-modal-body { -webkit-overflow-scrolling: touch; padding: 16px; } /* Footer Optimizations */ .nx-modal-footer { padding: 16px; gap: 12px; flex-direction: column; } .nx-modal-footer .btn { width: 100%; padding: 12px; font-size: 16px; margin: 0; } /* Gesture Support */ .nx-modal-content { touch-action: pan-y; } /* Drag Indicator untuk Bottom Sheet */ .nx-modal-bottom-sheet .nx-modal-header::before { content: ''; width: 36px; height: 4px; background: #e0e0e0; border-radius: 2px; position: absolute; top: 8px; left: 50%; transform: translateX(-50%); } /* Safe Area Support */ .nx-modal-content { padding-left: env(safe-area-inset-left); padding-right: env(safe-area-inset-right); padding-bottom: env(safe-area-inset-bottom); } /* Modal Sizes Override */ .nx-modal-sm .nx-modal-content, .nx-modal-lg .nx-modal-content { width: 100% !important; } /* Scrollable Modal */ .nx-modal-scrollable .nx-modal-content { max-height: 100vh; } /* Disable Desktop Features */ .nx-modal-draggable .nx-modal-header, .nx-modal-resizable .nx-modal-content::after, .nx-modal-controls { display: none; } /* Performance Optimizations */ .nx-modal { -webkit-backface-visibility: hidden; backface-visibility: hidden; perspective: 1000; transform: translateZ(0); } .nx-modal * { -webkit-tap-highlight-color: transparent; } /* Animations */ @keyframes modalSlideUp { from { transform: translateY(100%); } to { transform: translateY(0); } } .nx-modal-slide-up .nx-modal-content { animation: modalSlideUp 0.3s ease-out forwards; } /* Reduced Motion */ @media (prefers-reduced-motion: reduce) { .nx-modal-content { transition: none !important; animation: none !important; } } }