*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f5f5;color:#333;font-family:Hiragino Kaku Gothic Pro,ヒラギノ角ゴ Pro W3,メイリオ,Meiryo,MS Pゴシック,sans-serif;line-height:1.6}a{color:#2c7be5;text-decoration:none}ul{list-style:none}h1,h2,h3,h4,h5,h6{color:#2d3748;font-weight:600;margin-bottom:1rem}button{border:none;border-radius:4px;cursor:pointer;padding:.5rem 1rem;transition:all .3s ease}button,input,select,textarea{font-family:inherit;font-size:1rem}input,select,textarea{border:1px solid #ddd;border-radius:4px;padding:.5rem;width:100%}.app-container{display:flex;flex-direction:column;min-height:100vh}.main-content{flex:1 1;margin:0 auto;max-width:1200px;padding:2rem;width:100%}.app-header{background-color:#2c7be5;box-shadow:0 2px 4px #0000001a;color:#fff;padding:1rem 2rem}.header-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.logo a{color:#fff;display:flex;flex-direction:column;font-size:1.5rem;font-weight:700;line-height:1.2}.logo a span{font-size:.8rem;font-weight:400;margin-top:.2rem}.main-nav{margin-left:2rem}.nav-links{display:flex;gap:1.5rem}.nav-links a{color:#fff;font-weight:500;padding:.5rem 0;position:relative}.nav-links a:after{background-color:#fff;bottom:0;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-links a:hover:after{width:100%}.user-section{align-items:center;display:flex;gap:1rem}.user-name{font-weight:500}.logout-button{background-color:#fff3;border:1px solid #fff;color:#fff}.logout-button:hover{background-color:#ffffff4d}.login-link{border:1px solid #fff;border-radius:4px;color:#fff;padding:.5rem 1rem}.app-footer{background-color:#2d3748;color:#fff;margin-top:2rem;padding:1.5rem 2rem}.footer-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;width:100%}.footer-links{display:flex;gap:1.5rem}.footer-links a{color:#cbd5e0}.footer-links a:hover{color:#fff}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-weight:500;margin-bottom:.5rem}.error-message{margin-top:.25rem}input.error{border-color:#e53e3e}.error-alert{background-color:#fed7d7;border-radius:4px;color:#e53e3e;margin-bottom:1rem;padding:.75rem}.primary-button{background-color:#2c7be5;color:#fff}.primary-button:hover{background-color:#2361b3}.secondary-button{background-color:#edf2f7;color:#2d3748}.secondary-button:hover{background-color:#e2e8f0}.danger-button{background-color:#e53e3e;color:#fff}.danger-button:hover{background-color:#c53030}.login-container,.register-container{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px #0000001a;margin:2rem auto;max-width:500px;padding:2rem}.login-form,.register-form{margin-top:1.5rem}.login-button,.register-button{background-color:#2c7be5;color:#fff;font-size:1.1rem;margin-top:1rem;padding:.75rem;width:100%}.login-button:hover,.register-button:hover{background-color:#2361b3}.login-link,.register-link{margin-top:1.5rem;text-align:center}.demo-info{background-color:#f0f9ff;border-left:4px solid #2c7be5;border-radius:4px;margin-top:2rem;padding:1rem}.quiz-container{margin:0 auto;max-width:800px}.quiz-intro{margin-bottom:2rem;text-align:center}.start-quiz-button{background-color:#2c7be5;color:#fff;font-size:1.1rem;margin-top:1rem;padding:.75rem 2rem}.quiz-progress{margin-bottom:1.5rem}.progress-bar{background-color:#e2e8f0;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background-color:#2c7be5;height:100%;transition:width .3s ease}.question-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:2rem}.multiple-choice-question .question-title{margin-bottom:1.5rem}.highlight-text{color:red;font-weight:700;text-decoration:underline}.options-container{display:flex;flex-direction:column;gap:1rem;margin-bottom:1.5rem}.option{align-items:center;border:1px solid #e2e8f0;border-radius:4px;cursor:pointer;display:flex;padding:1rem;transition:all .2s ease}.option:hover{background-color:#f7fafc}.option.selected{background-color:#ebf5ff;border-color:#2c7be5}.option.correct{background-color:#f0fff4;border-color:#48bb78}.option.incorrect{background-color:#fff5f5;border-color:#e53e3e}.option-number{align-items:center;background-color:#edf2f7;border-radius:50%;display:flex;font-weight:600;height:30px;justify-content:center;margin-right:1rem;width:30px}.next-button,.option.selected .option-number,.submit-button{background-color:#2c7be5;color:#fff}.next-button,.submit-button{font-size:1.1rem;padding:.75rem 1.5rem}.submit-button:disabled{background-color:#a0aec0;cursor:not-allowed}.answer-feedback{border-top:1px solid #e2e8f0;margin-top:1.5rem;padding-top:1.5rem}.feedback-message{font-weight:600;margin-bottom:1rem}.feedback-message.correct{color:#48bb78}.feedback-message.incorrect{color:#e53e3e}.explanation{background-color:#f7fafc;border-radius:4px;margin-bottom:1.5rem;padding:1rem}.fake-warning-popup{background-color:#fff;border:2px solid #e53e3e;border-radius:8px;box-shadow:0 4px 12px #0000001a;margin:0 auto;max-width:600px;padding:1.5rem;position:relative}.warning-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.warning-title{color:#e53e3e;font-size:1.2rem;font-weight:700}.close-button{background:none;color:#718096;font-size:1.5rem;padding:.25rem .5rem}.warning-content{align-items:center;display:flex;flex-direction:column;text-align:center}.warning-icon{font-size:3rem;margin-bottom:1rem}.warning-message{font-size:1.1rem;line-height:1.5;margin-bottom:1.5rem}.fake-buttons{display:flex;gap:1rem;margin-top:1rem}.fake-button{background-color:#e53e3e;border-radius:4px;color:#fff;cursor:pointer;font-weight:500;padding:.75rem 1.5rem}.email-container{background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.email-header{border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem;padding-bottom:.5rem}.email-field{margin-bottom:.5rem}.field-label{font-weight:600;margin-right:.5rem}.email-body{background-color:#f8fafc;border-radius:4px;padding:1rem}.answer-form{margin-top:1.5rem}.correct-answer{color:#48bb78;font-weight:600}.results-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin:0 auto;max-width:800px;padding:2rem}.user-info{background-color:#f7fafc;border-radius:4px;margin-bottom:2rem;padding:1rem}.score-container{margin-bottom:2rem}.score-circle,.score-container{display:flex;justify-content:center}.score-circle{align-items:center;border:10px solid #2c7be5;border-radius:50%;flex-direction:column;height:150px;width:150px}.score-percentage{color:#2c7be5;font-size:2rem;font-weight:700}.score-fraction{color:#718096;font-size:1.1rem}.feedback-container{background-color:#f0f9ff;border-left:4px solid #2c7be5;border-radius:8px;margin-bottom:2rem;padding:1.5rem;text-align:center}.actions-container{display:flex;gap:1rem;justify-content:center;margin-bottom:2rem}.action-button{font-weight:500;padding:.75rem 1.5rem}.action-button.retake{background-color:#2c7be5;color:#fff}.answers-container{border-top:1px solid #e2e8f0;padding-top:2rem}.question-review{background-color:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:1.5rem}.question-text{font-weight:500}.options-review,.question-text{margin-bottom:1rem}.option-review{background-color:#f7fafc;border-radius:4px;margin-bottom:.5rem;padding:.75rem}.option-review.correct{background-color:#f0fff4;border-left:4px solid #48bb78}.option-review.incorrect{background-color:#fff5f5;border-left:4px solid #e53e3e}.result-status{border-radius:4px;display:inline-block;font-weight:600;margin-bottom:1rem;padding:.25rem .75rem}.result-status.correct{background-color:#f0fff4;color:#48bb78}.result-status.incorrect{background-color:#fff5f5;color:#e53e3e}.explanation-review{background-color:#f7fafc;border-radius:4px;padding:1rem}.stat-card{background-color:#fff;text-align:center}.stat-value{color:#2c7be5;font-size:2.5rem;margin:1rem 0}.stat-link{color:#2c7be5;display:inline-block;font-weight:500;margin-top:.5rem}.admin-menu{margin-bottom:2rem}.menu-buttons{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.menu-button{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;color:#2d3748;display:flex;flex-direction:column;padding:1.5rem;transition:all .3s ease}.menu-button:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-5px)}.button-icon{font-size:2rem;margin-bottom:1rem}.button-text{font-weight:500}.recent-results{background-color:#fff}.questions-table-container,.results-table-container,.users-table-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow-x:auto}.questions-table,.results-table,.users-table{border-collapse:collapse;width:100%}.questions-table th,.results-table th,.users-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;cursor:pointer;padding:1rem;text-align:left}.questions-table td,.results-table td,.users-table td{border-bottom:1px solid #e2e8f0;padding:1rem}.sort-indicator{margin-left:.5rem}.actions-cell{display:flex;gap:.5rem}.edit-button{background-color:#3182ce;color:#fff}.delete-button{background-color:#e53e3e;color:#fff}.view-button{background-color:#2c7be5;color:#fff}.edit-button:hover{background-color:#2361b3}.delete-button:hover{background-color:#c53030}.delete-button:disabled{background-color:#a0aec0;cursor:not-allowed}.score-cell{align-items:center;display:flex;gap:1rem}.score-bar{background-color:#e2e8f0;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.score-fill{background-color:#2c7be5;height:100%}.current-user{background-color:#f0f9ff}.filters-container,.search-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;padding:1.5rem}.filter-group{flex:1 1;min-width:200px}.date-range,.score-range{align-items:center;display:flex;gap:.5rem}.filter-actions{align-items:flex-end;display:flex;gap:.5rem}.apply-button{background-color:#2c7be5;color:#fff}.reset-button{background-color:#edf2f7;color:#2d3748}.search-input{flex:1 1}.add-button{background-color:#2c7be5;color:#fff}.export-container{display:flex;justify-content:flex-end;margin-bottom:1.5rem}.export-button{background-color:#2c7be5;color:#fff}.result-detail-modal{align-items:center;background-color:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:1000}.modal-content{background-color:#fff;border-radius:8px;box-shadow:0 4px 12px #00000026;max-height:90vh;max-width:900px;overflow-y:auto;width:90%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between}.modal-body,.modal-header{padding:1.5rem}.result-info{background-color:#f7fafc;border-radius:4px;margin-bottom:2rem;padding:1rem}.answer-details{margin-top:1.5rem}.answers-table{border-collapse:collapse;margin-top:1rem;width:100%}.answers-table th{background-color:#f7fafc;border-bottom:2px solid #e2e8f0;padding:.75rem;text-align:left}.answers-table td{border-bottom:1px solid #e2e8f0;padding:.75rem}.correct{color:#48bb78}.incorrect{color:#e53e3e}.question-form-container,.user-form-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.question-form,.user-form{margin:0 auto;max-width:600px}.form-header{border-bottom:1px solid #e2e8f0;margin-bottom:1.5rem;padding-bottom:.5rem}.nested-form{background-color:#f7fafc;border-radius:4px;margin-top:.5rem;padding:1rem}.option-input{align-items:center;display:flex;gap:.5rem;margin-bottom:.75rem}.option-input input[type=radio]{width:auto}.form-actions{display:flex;gap:1rem;margin-top:2rem}.save-button{background-color:#2c7be5;color:#fff;padding:.75rem 1.5rem}.cancel-button{background-color:#edf2f7;color:#2d3748;padding:.75rem 1.5rem}@media (max-width:768px){.header-container{align-items:flex-start;flex-direction:column}.main-nav{margin-left:0;margin-top:1rem;width:100%}.nav-links{flex-direction:column;gap:.5rem}.user-section{justify-content:space-between;margin-top:1rem;width:100%}.footer-container{flex-direction:column;gap:1rem}.menu-buttons,.stats-container{grid-template-columns:1fr}.filters-container,.search-container{flex-direction:column}.filter-group{width:100%}.filter-actions{justify-content:flex-end;width:100%}}.loading{font-size:1.2rem}.loading,.no-data,.no-results,.no-users{color:#718096;padding:2rem;text-align:center}.send-email-section{background-color:#f8fafc;border-left:4px solid #3182ce;border-radius:4px;margin:1.5rem 0;padding:1rem}.send-email-button{background-color:#4299e1;border-radius:4px;color:#fff;font-weight:500;margin-top:.5rem;padding:.5rem 1rem}.send-email-button:hover{background-color:#3182ce}.send-email-button:disabled{background-color:#a0aec0;cursor:not-allowed}.email-sent-message{background-color:#f0fff4;border-left:4px solid #48bb78;border-radius:4px;margin-top:.75rem;padding:.75rem}.error-message{color:#e53e3e;font-size:.875rem;margin-top:.5rem}.email-container .email-field{line-height:1.5;margin-bottom:.5rem}.email-container .field-label{display:inline-block;font-weight:600;margin-right:.5rem;min-width:4rem}.no-permission-message{background-color:#ebf8ff;border-left:4px solid #3182ce;border-radius:8px;margin:2rem 0;padding:2rem;text-align:center}.no-permission-message p{color:#2c5282;font-size:1.1rem;margin-bottom:1.5rem}.notification{animation:fadeIn .3s,fadeOut .5s 4.5s;border-radius:4px;margin-bottom:1rem;padding:.75rem 1.25rem}.notification.success{background-color:#d4edda;border-left:4px solid #28a745;color:#155724}.notification.error{background-color:#f8d7da;border-left:4px solid #dc3545;color:#721c24}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.password-field{margin-bottom:1.5rem}.password-input-group{display:flex;gap:.5rem}.password-input-group input{flex:1 1}.generate-password-button,.toggle-password-button{background-color:#e2e8f0;border:none;border-radius:4px;color:#4a5568;cursor:pointer;font-size:.875rem;padding:.5rem .75rem;white-space:nowrap}.generate-password-button:hover,.toggle-password-button:hover{background-color:#cbd5e0}.generate-password-button{background-color:#4299e1;color:#fff}.generate-password-button:hover{background-color:#3182ce}.password-hint{color:#718096;display:block;font-size:.75rem;margin-top:.25rem}.forced-close-detected{background-color:#f8f9fa;border-radius:8px;box-shadow:0 4px 8px #0000001a;margin:0 auto;max-width:600px;padding:20px;text-align:center}.forced-close-detected h3{color:#343a40;margin-bottom:15px}.forced-close-detected p{margin-bottom:10px}.success-message{background-color:#28a7451a;color:#28a745}.failure-message,.success-message{border-radius:4px;font-size:1.2em;font-weight:700;margin:15px 0;padding:10px}.failure-message{background-color:#dc35451a;color:#dc3545}.instruction-box{background-color:#f8f9fa;border-left:4px solid #17a2b8;border-radius:4px;margin:20px 0;padding:15px}.instruction-box h4{color:#17a2b8;margin-bottom:10px;margin-top:0}.instruction-box p{margin-bottom:5px}.instruction-box strong{color:#dc3545}.button-group{display:flex;gap:10px;margin-left:10px}.csv-upload-button{background-color:#4caf50;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.csv-upload-button:hover{background-color:#45a049}.csv-upload-container{background-color:#f9f9f9;border:1px solid #ddd;border-radius:4px;margin:20px 0;padding:20px}.csv-upload-form{display:flex;flex-direction:column;gap:15px}.csv-file-input{border:1px solid #ddd;border-radius:4px;padding:8px}.csv-preview{margin-top:15px;overflow-x:auto}.csv-preview table{border-collapse:collapse;width:100%}.csv-preview td,.csv-preview th{border:1px solid #ddd;padding:8px;text-align:left}.csv-preview th{background-color:#f2f2f2}.csv-upload-actions{display:flex;gap:10px;margin-top:15px}.import-button{background-color:#2196f3;border:none;border-radius:4px;color:#fff;cursor:pointer;padding:8px 16px}.import-button:hover{background-color:#0b7dda}.admin-dashboard{margin:0 auto;max-width:1200px;padding:2rem}.admin-dashboard h2{color:#333;font-size:1.8rem;margin-bottom:2rem}.stats-container{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}.stat-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.stat-card h3{color:#666;font-size:1.1rem;margin-bottom:.5rem}.stat-value{color:#2c3e50;font-size:2rem;font-weight:700;margin-bottom:1rem}.stat-link{color:#3498db;font-size:.9rem;text-decoration:none}.stat-link:hover{text-decoration:underline}.admin-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-bottom:2rem}.admin-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.admin-card h3{color:#2c3e50;margin-bottom:.5rem}.admin-card p{color:#666;font-size:.9rem;margin-bottom:1rem}.btn{border-radius:4px;display:inline-block;font-weight:500;padding:.5rem 1rem;text-decoration:none;transition:background-color .2s}.btn-primary{background-color:#3498db;color:#fff}.btn-primary:hover{background-color:#2980b9}.recent-results{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem}.recent-results h3{color:#2c3e50;margin-bottom:1rem}.results-table{border-collapse:collapse;width:100%}.results-table td,.results-table th{border-bottom:1px solid #eee;padding:.75rem;text-align:left}.results-table th{color:#666;font-weight:500}.results-table th,.results-table tr:hover{background-color:#f8f9fa}.no-data{color:#666;padding:1rem;text-align:center}@media (max-width:768px){.admin-dashboard{padding:1rem}.admin-grid,.stats-container{grid-template-columns:1fr}.results-table{display:block;overflow-x:auto}}.terms-content{line-height:1.8;margin:0 auto;max-width:800px;padding:20px}.terms-content h2{border-bottom:2px solid #e0e0e0;font-size:1.5rem;font-weight:700;margin:2rem 0 1rem;padding-bottom:.5rem}.terms-content h3{font-size:1.2rem;font-weight:700;margin:1.5rem 0 1rem}.terms-content p{font-size:1rem;line-height:1.8;margin:1rem 0}.terms-content ul{margin:1rem 0;padding-left:2rem}.terms-content li{line-height:1.6;margin:.5rem 0}.terms-content section{margin:2rem 0}.terms-content strong{font-weight:700}.terms-content a{color:#06c;text-decoration:underline}.terms-content a:hover{text-decoration:none}
/*# sourceMappingURL=main.5d646bbe.css.map*/