.modal{position:fixed;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,#000c,#000000f2);display:flex;justify-content:center;align-items:flex-start;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:modalFadeIn .3s ease-out;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:var(--space-lg) 0}#addStudentModal,#removeStudentModal,#editStudentModal{z-index:1002}#noticeModal,#confirmModal,#autoNoticeModal,#passwordModal,#numberInputModal,#choiceModal{z-index:1100}#exportDataModal{z-index:1050}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:repeating-linear-gradient(45deg,transparent,transparent 35px,rgba(255,255,255,.01) 35px,rgba(255,255,255,.01) 70px),var(--container-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:var(--space-2xl);border-radius:2rem;box-shadow:var(--glass-shadow);text-align:center;max-width:28rem;width:90%;position:relative;border:var(--glass-border);animation:modalSlideIn .3s var(--animation-bounce);overflow:visible;margin-top:auto;margin-bottom:auto;flex-shrink:0}.modal-content:before{content:"";position:absolute;top:0;right:0;width:100%;height:100%;background:radial-gradient(circle at top right,var(--color-accent-primary) 0%,transparent 70%);opacity:.05;pointer-events:none;border-radius:inherit}@keyframes modalSlideIn{0%{transform:translateY(-50px) scale(.9);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.modal h2{margin-bottom:var(--space-lg);color:var(--text-color-primary);font-size:var(--font-size-xl);font-weight:800}.modal p{margin-bottom:var(--space-md);color:var(--text-color-secondary);font-size:var(--font-size-base);line-height:1.6}.modal input,.modal select{width:80%;padding:var(--space-md);margin-bottom:var(--space-lg);font-size:var(--font-size-base);text-align:center;border:3px solid var(--border-color);background:var(--seat-bg);color:var(--text-color-primary);border-radius:1rem;transition:all var(--transition-base);font-family:inherit;font-weight:600}.close-modal-btn{position:absolute;top:var(--space-md);right:var(--space-lg);cursor:pointer;font-size:var(--font-size-xl);color:var(--text-color-secondary);width:2.5rem;height:2.5rem;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--seat-bg);transition:all var(--transition-base)}.close-modal-btn:hover{color:var(--text-color-primary);background:var(--border-color);transform:rotate(90deg)}.modal-absent-btn{position:absolute;top:.9375rem;right:.9375rem;width:2.1875rem;height:2.1875rem;background-color:#ccc;color:#333;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.125rem;cursor:pointer;transition:transform .2s,background-color .2s}.modal-absent-btn:hover{transform:scale(1.1);background-color:#bbb}.close-modal-btn{position:absolute;top:.625rem;right:.9375rem;cursor:pointer;font-size:1.5rem;color:var(--text-color-secondary)}.export-modal-content{max-width:32rem;text-align:left}.export-modal-content h2{text-align:center;display:flex;align-items:center;justify-content:center;gap:.5rem}.export-summary{display:flex;justify-content:space-around;gap:var(--space-md);padding:var(--space-lg);background:var(--seat-bg);border-radius:1rem;margin-bottom:var(--space-lg)}.export-summary-item{display:flex;flex-direction:column;align-items:center;gap:.25rem}.export-summary-label{font-size:var(--font-size-xs);color:var(--text-color-secondary);font-weight:600}.export-summary-value{font-size:var(--font-size-lg);font-weight:800;color:var(--text-color-primary)}.export-progress-section{padding:var(--space-lg);background:var(--seat-bg);border-radius:1rem;margin-bottom:var(--space-lg)}.export-progress-bar{height:8px;background:var(--border-color);border-radius:4px;overflow:hidden;margin-bottom:var(--space-sm)}.export-progress-fill{height:100%;width:0%;background:linear-gradient(90deg,var(--color-accent-primary),var(--color-accent-success));border-radius:4px;transition:width .3s ease-out}.export-progress-text{font-size:var(--font-size-xs);color:var(--text-color-secondary);text-align:center;margin:0}.export-actions{display:flex;justify-content:center;gap:var(--space-md)}.export-actions .btn{display:flex;align-items:center;gap:.5rem}.export-actions .btn-icon{font-size:1rem}@media(max-width:480px){.export-summary{flex-direction:column;gap:var(--space-sm)}.export-summary-item{flex-direction:row;justify-content:space-between;width:100%}}
