body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.container{max-width:800px;margin:0 auto;padding:20px;min-height:100vh;display:flex;align-items:center;justify-content:center}.start-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;width:100%;animation:fadeIn .5s ease-in}.title{font-size:2.5rem;color:#333;text-align:center;margin-bottom:10px}.subtitle{font-size:1.2rem;color:#666;text-align:center;margin-bottom:40px}.mode-selection{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:30px}.mode-button{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:15px;padding:30px 20px;color:#fff;cursor:pointer;transition:transform .3s ease,box-shadow .3s ease;text-align:center}.mode-button:hover{transform:translateY(-5px);box-shadow:0 10px 30px #667eea66}.mode-button.all{background:linear-gradient(135deg,#667eea,#764ba2)}.mode-button.random{background:linear-gradient(135deg,#f093fb,#f5576c)}.mode-button.router{background:linear-gradient(135deg,#4facfe,#00f2fe)}.mode-button.cable{background:linear-gradient(135deg,#fa709a,#fee140)}.mode-button.mock-exam{background:linear-gradient(135deg,#ff6a00,#ee0979)}.mode-button.exam-info{background:linear-gradient(135deg,#43cea2,#185a9d)}.mode-icon{font-size:3rem;margin-bottom:15px}.mode-button h3{font-size:1.3rem;margin-bottom:10px}.mode-button p{font-size:1rem;opacity:.9}.info-box{background:#f8f9fa;border-radius:10px;padding:20px;text-align:center}.info-box p{color:#666;margin:5px 0}.quiz-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;width:100%;animation:fadeIn .5s ease-in}.quiz-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.quiz-title{font-size:1.8rem;color:#333;margin:0}.progress-bar{width:100%;height:8px;background:#e0e0e0;border-radius:10px;overflow:hidden;margin-bottom:30px}.progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease}.question-info{display:flex;justify-content:flex-end;align-items:center;margin-bottom:20px}.question-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:10px}.question-number{font-size:1.1rem;color:#667eea;font-weight:600}.current-score{font-size:1.1rem;color:#764ba2;font-weight:600}.question-card{background:#f8f9fa;border-radius:15px;padding:30px}.question-text{font-size:1.5rem;color:#333;margin-bottom:30px;line-height:1.6}.answer-input-container{display:flex;flex-direction:column;gap:15px}.multi-answer-inputs{display:flex;flex-direction:column;gap:12px;margin-bottom:10px}.multi-answer-row{display:flex;align-items:center;gap:10px}.multi-answer-row .answer-label{font-weight:600;color:#555;min-width:70px;font-size:.95rem}.multi-answer-row .answer-input{flex:1}.exam-multi-answer{margin:20px 0}.exam-multi-answer .multi-answer-row{margin-bottom:10px}.exam-multi-answer .exam-answer-input{flex:1}.answer-input{width:100%;padding:15px 20px;font-size:1.1rem;border:2px solid #e0e0e0;border-radius:10px;transition:border-color .3s ease}.answer-input:focus{outline:none;border-color:#667eea}.answer-input:disabled{background-color:#f5f5f5;cursor:not-allowed}.submit-button{padding:15px 30px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.submit-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.submit-button.next{background:linear-gradient(135deg,#43cea2,#185a9d)}.submit-button.next:hover{box-shadow:0 5px 20px #43cea266}.feedback-box{margin:20px 0;padding:20px;border-radius:12px;display:flex;gap:15px;animation:slideIn .3s ease-out}.feedback-box.correct{background:linear-gradient(135deg,#d4edda,#c3e6cb);border:2px solid #28a745}.feedback-box.incorrect{background:linear-gradient(135deg,#f8d7da,#f5c6cb);border:2px solid #dc3545}.feedback-icon{font-size:2rem;flex-shrink:0}.feedback-content{flex:1}.feedback-title{font-size:1.1rem;font-weight:700;margin-bottom:8px}.feedback-box.correct .feedback-title{color:#155724}.feedback-box.incorrect .feedback-title{color:#721c24}.feedback-answer{font-size:1rem;font-weight:600;margin-bottom:8px;color:#721c24}.feedback-description{font-size:.95rem;color:#666;line-height:1.5}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.result-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;width:100%;animation:fadeIn .5s ease-in}.result-header{text-align:center;margin-bottom:40px;padding-bottom:30px;border-bottom:2px solid #e0e0e0}.result-emoji{font-size:5rem;margin-bottom:20px}.result-title{font-size:2rem;color:#333;margin-bottom:20px}.result-score{margin-bottom:15px}.score-value{font-size:4rem;font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.score-max{font-size:1.5rem;color:#999;margin-left:10px}.result-message{font-size:1.3rem;color:#666;font-weight:500}.review-section{margin-bottom:30px}.review-title{font-size:1.8rem;color:#333;margin-bottom:20px}.review-card{background:#f8f9fa;border-radius:15px;padding:25px;margin-bottom:20px;border-left:5px solid #667eea}.review-card.incorrect{border-left-color:#f5576c}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;flex-wrap:wrap;gap:10px}.review-number{font-weight:600;color:#667eea;font-size:1rem}.review-badge{padding:5px 15px;border-radius:20px;font-size:.9rem;font-weight:600}.review-badge.correct{background:#d4edda;color:#155724}.review-badge.incorrect{background:#f8d7da;color:#721c24}.review-question{font-size:1.1rem;color:#333;margin-bottom:15px;font-weight:500;line-height:1.6}.review-answers{display:flex;flex-direction:column;gap:10px}.user-answer{color:#f5576c;font-size:.95rem}.user-answer span{font-weight:600}.correct-answer{color:#28a745;font-size:.95rem;font-weight:600}.correct-answer span{font-weight:700}.answer-description{color:#666;font-size:.9rem;font-style:italic}.restart-button{width:100%;padding:18px;font-size:1.2rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.restart-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.back-button{width:100%;padding:15px;margin-top:20px;font-size:1rem;font-weight:600;color:#667eea;background:#fff;border:2px solid #667eea;border-radius:10px;cursor:pointer;transition:all .2s ease}.back-button:hover{background:#667eea;color:#fff}.windows-settings-page{background:#fff;border-radius:20px;padding:30px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:900px;animation:fadeIn .5s ease-in}.windows-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.back-button-small{padding:8px 16px;font-size:.9rem;font-weight:600;color:#667eea;background:#fff;border:2px solid #667eea;border-radius:8px;cursor:pointer;transition:all .2s ease}.back-button-small:hover{background:#667eea;color:#fff}.windows-title{font-size:1.8rem;color:#333;margin:0}.problem-counter{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:8px 16px;border-radius:20px;font-weight:600}.windows-problem-card{background:#f8f9fa;border-radius:15px;padding:30px}.problem-title{font-size:1.5rem;color:#333;margin-bottom:15px}.access-path-container{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 4px 15px #667eea33}.access-path-label{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:12px;opacity:.95}.access-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.path-step{display:inline-flex;align-items:center;gap:8px;background:#fff3;color:#fff;padding:8px 16px;border-radius:8px;font-size:.95rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);transition:all .2s ease}.path-step:hover{background:#ffffff4d;transform:translateY(-2px)}.path-arrow{color:#fffc;font-size:1.2rem;font-weight:700}.access-path-quiz{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:25px;margin-bottom:20px;box-shadow:0 4px 15px #667eea33}.path-drop-zone{background:#ffffff26;border:2px dashed rgba(255,255,255,.4);border-radius:10px;padding:20px;margin:15px 0;min-height:100px}.drop-zone-label{color:#ffffffe6;font-size:.85rem;margin-bottom:10px;text-align:center}.user-path-container{display:flex;flex-wrap:wrap;gap:10px;align-items:center;min-height:60px}.path-item{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:8px;font-size:.95rem;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.path-item.option{background:#ffffffe6;color:#667eea;border:2px solid transparent}.path-item.option:hover{background:#fff;border-color:#667eea;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.path-item.placed{background:#ffffff40;color:#fff;border:1px solid rgba(255,255,255,.4);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.path-item.placed:hover{background:#ffffff59;transform:translateY(-2px)}.path-number{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#ffffff4d;border-radius:50%;font-size:.8rem;font-weight:700;margin-right:4px}.empty-placeholder{color:#fff9;font-style:italic;text-align:center;width:100%;padding:20px}.path-options{margin-top:20px}.options-label{color:#fff;font-size:.9rem;font-weight:600;margin-bottom:12px;opacity:.95}.options-container{display:flex;flex-wrap:wrap;gap:10px}.access-path-result{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 4px 15px #667eea33}.correct-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.user-wrong-path{margin-top:15px;padding-top:15px;border-top:1px solid rgba(255,255,255,.3)}.wrong-path-label{color:#fffc;font-size:.85rem;margin-bottom:10px}.wrong-path{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.path-step.wrong{background:#ff64644d;border-color:#ff646480}.problem-description{background:#fff;padding:20px;border-radius:10px;margin-bottom:30px;border-left:4px solid #667eea}.problem-description p{color:#555;line-height:1.8;margin:5px 0;font-weight:500}.windows-gui-container{margin:20px 0}.windows-dialog{background:#f0f0f0;border:1px solid #0078d4;border-radius:8px 8px 0 0;box-shadow:0 4px 20px #0003;overflow:hidden}.dialog-title-bar{background:linear-gradient(180deg,#fff,#e5e5e5);padding:8px 12px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d0d0d0}.dialog-title{font-size:.9rem;color:#000;font-weight:500}.title-bar-buttons{display:flex;gap:8px}.title-button{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#e1e1e1;border:1px solid #adadad;border-radius:2px;cursor:pointer;font-size:.8rem;color:#000}.title-button:hover{background:#d0d0d0}.dialog-content{background:#f0f0f0;padding:20px}.dialog-section{margin-bottom:20px}.section-title{font-size:.95rem;color:#000;margin-bottom:12px;font-weight:600;border-bottom:1px solid #d0d0d0;padding-bottom:8px}.radio-option{display:flex;align-items:center;gap:8px;margin-bottom:15px;font-size:.95rem;color:#000;cursor:pointer}.radio-option input[type=radio]{width:16px;height:16px;cursor:pointer}.input-group{display:flex;align-items:center;margin-bottom:12px;margin-left:24px}.input-label{width:180px;font-size:.9rem;color:#000}.windows-input{flex:1;padding:6px 10px;border:1px solid #7a7a7a;background:#fff;font-size:.9rem;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;transition:border-color .2s ease}.windows-input:focus{outline:none;border:1px solid #0078d4;box-shadow:0 0 0 1px #0078d4}.windows-input:disabled{background:#e0e0e0;color:#666}select.windows-input{cursor:pointer;appearance:none;background-image:url('data:image/svg+xml;utf8,<svg fill="%23333" height="20" viewBox="0 0 24 24" width="20" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>');background-repeat:no-repeat;background-position:right 8px center;padding-right:32px}select.windows-input:disabled{cursor:not-allowed}.input-correct{border:2px solid #28a745!important;background:#d4edda!important}.input-incorrect{border:2px solid #dc3545!important;background:#f8d7da!important}.button-group{margin-top:30px;display:flex;flex-direction:column;gap:15px}.submit-button-windows{width:100%;padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.submit-button-windows:hover{transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.result-feedback{display:flex;flex-direction:column;gap:15px}.feedback-message{padding:20px;border-radius:10px;text-align:center;font-size:1.2rem;font-weight:600}.feedback-message.correct{background:#d4edda;color:#155724;border:2px solid #28a745}.feedback-message.incorrect{background:#f8d7da;color:#721c24;border:2px solid #dc3545}.correct-answers-box{background:#fff;padding:20px;border-radius:10px;border-left:4px solid #0078d4}.correct-answers-box h4{color:#333;margin-bottom:10px}.correct-answers-box p{color:#555;margin:8px 0;font-size:.95rem}.correct-answers-box strong{color:#0078d4}.next-button{width:100%;padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#28a745,#20c997);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.next-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #28a74566}.retry-button{width:100%;padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#f5576c,#f093fb);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #f5576c66}.button-row{display:flex;gap:15px}.button-row button{flex:1}.skip-button{padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#6c757d,#495057);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.skip-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #6c757d66}.router-settings-page{background:#fff;border-radius:20px;padding:30px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:1000px;animation:fadeIn .5s ease-in}.router-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.router-title{font-size:1.8rem;color:#333;margin:0}.router-problem-card{background:#f8f9fa;border-radius:15px;padding:30px}.problem-category{display:inline-block;background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:15px}.router-terminal{background:#1e1e1e;border-radius:10px;overflow:hidden;margin:20px 0;box-shadow:0 4px 20px #0000004d}.terminal-header{background:#323232;padding:10px 15px;display:flex;align-items:center;gap:10px}.terminal-buttons{display:flex;gap:8px}.terminal-button{width:12px;height:12px;border-radius:50%}.terminal-button.red{background:#ff5f56}.terminal-button.yellow{background:#ffbd2e}.terminal-button.green{background:#27c93f}.terminal-title{color:#999;font-size:.85rem;margin-left:10px}.terminal-body{padding:20px;min-height:300px;max-height:500px;overflow-y:auto;font-family:Consolas,Monaco,Courier New,monospace}.terminal-output{margin-bottom:10px}.terminal-line{color:#d4d4d4;font-size:.95rem;line-height:1.6;padding:2px 0}.terminal-input-form{display:flex;align-items:center;gap:8px}.terminal-prompt{color:#4fc3f7;font-weight:600;font-size:.95rem}.terminal-input-line{display:flex;align-items:center}.terminal-input{flex:1;background:transparent;border:none;color:#d4d4d4;font-size:.95rem;font-family:Consolas,Monaco,Courier New,monospace;outline:none;padding:5px}.terminal-input::placeholder{color:#666}.command-info{margin-top:15px;padding:10px;background:#4fc3f71a;border-left:3px solid #4fc3f7;border-radius:4px}.command-info p{color:#4fc3f7;font-size:.9rem;margin:0}.correct-commands-box{background:#fff;padding:20px;border-radius:10px;border-left:4px solid #4facfe;margin:15px 0}.correct-commands-box h4{color:#333;margin-bottom:15px}.command-list{display:flex;flex-direction:column;gap:10px}.command-item{display:flex;align-items:center;gap:10px;background:#f8f9fa;padding:10px 15px;border-radius:8px}.command-number{color:#4facfe;font-weight:600;min-width:25px}.command-item code{background:#1e1e1e;color:#4fc3f7;padding:4px 10px;border-radius:4px;font-family:Consolas,Monaco,Courier New,monospace;font-size:.9rem;flex:1}.explanation-box{background:#e3f2fd;padding:20px;border-radius:10px;border-left:4px solid #2196f3;margin:15px 0}.explanation-box h4{color:#1976d2;margin-bottom:10px}.explanation-box p{color:#555;line-height:1.6;margin:0}.reset-button-router{padding:15px;font-size:1.1rem;font-weight:600;color:#666;background:#fff;border:2px solid #ddd;border-radius:10px;cursor:pointer;transition:all .2s ease}.reset-button-router:hover{border-color:#999;color:#333}.delete-line-button-router{padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#ff9a56,#ff6a00);border:none;border-radius:10px;cursor:pointer;transition:all .2s ease}.delete-line-button-router:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 5px 20px #ff6a0066}.delete-line-button-router:disabled{opacity:.5;cursor:not-allowed;background:linear-gradient(135deg,#ccc,#999)}.submit-button-router{flex:2;padding:15px;font-size:1.1rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;border-radius:10px;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.submit-button-router:hover{transform:translateY(-2px);box-shadow:0 5px 20px #4facfe66}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.container{padding:5px}.start-page,.quiz-page,.result-page{padding:15px}.title{font-size:1.6rem}.subtitle{font-size:.9rem}.mode-selection{grid-template-columns:1fr}.mode-icon{font-size:2.2rem}.mode-button h3{font-size:1rem}.question-text{font-size:1.1rem}.result-emoji{font-size:3rem}.result-title{font-size:1.3rem}.score-value{font-size:2.5rem}.score-max{font-size:1.1rem}.review-title{font-size:1.3rem}}@media(max-width:480px){.start-page,.quiz-page,.result-page{padding:12px}.title{font-size:1.5rem}.mode-button{padding:20px 12px}.question-text{font-size:1.1rem}.answer-input{font-size:1rem}.result-emoji{font-size:3rem}.score-value{font-size:2.5rem}}.cable-making-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;max-width:1200px;margin:20px auto;animation:fadeIn .5s ease-in}.cable-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.cable-title{font-size:1.8rem;color:#333;margin:0}.cable-problem-header{text-align:center;margin:0 0 40px;padding:0}.cable-instruction{font-size:1.3rem;color:#667eea;font-weight:600;margin-bottom:10px;margin-top:0}.cable-hint{font-size:1rem;color:#666;margin:0}.cable-workspace{display:flex;gap:40px;justify-content:center;margin:0 0 30px;flex-wrap:wrap}.cable-side{flex:1;min-width:300px;max-width:450px}.cable-side h3{text-align:center;font-size:1.3rem;color:#333;margin-bottom:20px;padding:10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border-radius:10px}.cable-connector{background:#f5f5f5;border:3px solid #333;border-radius:15px;padding:20px;box-shadow:inset 0 2px 10px #0000001a}.wire-slot{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding:8px;background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a}.wire-position{width:30px;height:30px;background:#333;color:#fff;display:flex;align-items:center;justify-content:center;border-radius:50%;font-weight:700;font-size:.9rem}.wire-display{flex:1;height:40px;border-radius:8px;border:2px solid #ccc;display:flex;align-items:center;justify-content:center;transition:all .3s ease;position:relative}.wire-label{font-size:.85rem;font-weight:600;color:#333;text-shadow:0 0 3px white,0 0 3px white}.color-select{padding:8px 12px;border:2px solid #667eea;border-radius:8px;font-size:.9rem;cursor:pointer;background:#fff;min-width:100px;transition:all .3s ease}.color-select:hover{border-color:#764ba2;background:#f9f9f9}.color-select:focus{outline:none;border-color:#764ba2;box-shadow:0 0 0 3px #764ba21a}.cable-controls{display:flex;gap:15px;justify-content:center;margin:30px 0}.check-button,.reset-button{padding:15px 40px;font-size:1.1rem;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:600;flex:1;max-width:200px}.check-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.check-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea66}.reset-button{background:#ff6b6b;color:#fff}.reset-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #ff6b6b66}.result-message{margin-top:30px;padding:25px;border-radius:15px;text-align:center}.result-message.correct{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.result-message.incorrect{background:linear-gradient(135deg,#eb3349,#f45c43);color:#fff}.result-message h3{font-size:1.8rem;margin-bottom:10px}.result-message p{font-size:1.2rem}.correct-answer-display{margin-top:20px;background:#fff3;padding:20px;border-radius:10px}.answer-sides{display:flex;gap:30px;justify-content:center;margin-top:15px;flex-wrap:wrap}.answer-sides>div{flex:1;min-width:250px}.answer-sides p{font-size:1.1rem;font-weight:600;margin-bottom:10px}.answer-wires{background:#ffffff4d;padding:15px;border-radius:8px}.answer-wire{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:5px;background:#fff6;border-radius:5px}.answer-wire span:first-child{font-weight:700;min-width:25px}.answer-wire-color{width:30px;height:30px;border-radius:5px;border:2px solid white}.answer-wire span:last-child{font-weight:600}@media(max-width:768px){.cable-making-page{padding:15px;margin:5px}.cable-header{padding-bottom:15px}.cable-title{font-size:1.3rem}.cable-problem-header{margin-bottom:20px}.cable-workspace{flex-direction:column;gap:30px;margin-bottom:20px}.cable-side{min-width:100%}.wire-slot{flex-wrap:wrap}.color-select{min-width:100%}.cable-controls{flex-direction:column;margin:20px 0}.check-button,.reset-button{width:100%;max-width:100%}.answer-sides{flex-direction:column}}.mock-exam-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;max-width:1200px;min-width:800px;margin:20px auto;animation:fadeIn .5s ease-in}.mock-exam-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.mock-exam-title{font-size:1.8rem;color:#333;margin:0}.mock-exam-info{display:flex;gap:20px;justify-content:center;margin-bottom:30px;flex-wrap:wrap}.exam-info-item{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 24px;border-radius:12px;display:flex;flex-direction:column;align-items:center;gap:5px;min-width:120px}.info-label{font-size:.85rem;opacity:.9}.info-value{font-size:1.3rem;font-weight:700}.exam-problem-content{background:#f8f9fa;border-radius:15px;padding:30px}.exam-problem-category{display:inline-block;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 16px;border-radius:20px;font-size:.85rem;font-weight:600;margin-bottom:15px}.exam-problem-title{font-size:1.5rem;color:#333;margin-bottom:20px}.exam-problem-instruction,.exam-problem-question{font-size:1.2rem;color:#555;margin-bottom:15px;line-height:1.6}.exam-problem-description{background:#fff;padding:15px;border-radius:10px;margin-bottom:20px}.exam-problem-description p{margin-bottom:8px;color:#555}.exam-problem-hint{color:#667eea;font-size:1rem;margin-bottom:20px}.exam-answer-input{width:100%;padding:15px 20px;font-size:1.1rem;border:2px solid #e0e0e0;border-radius:10px;margin-bottom:20px;transition:border-color .3s ease}.exam-answer-input:focus{outline:none;border-color:#667eea}.exam-answer-input:disabled{background:#f5f5f5;cursor:not-allowed}.submit-exam-button,.next-exam-button,.clear-exam-button{padding:15px 40px;font-size:1.1rem;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:600;margin:10px auto;display:block}.submit-exam-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;width:100%;max-width:300px}.submit-exam-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #667eea66}.next-exam-button{background:linear-gradient(135deg,#43cea2,#185a9d);color:#fff;width:100%;max-width:300px}.next-exam-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #43cea266}.exam-feedback-container{margin-top:20px}.exam-feedback-container .feedback-box{margin-bottom:15px}.exam-feedback-container .next-exam-button{width:100%;max-width:300px}.feedback-commands{margin-top:10px}.feedback-command-item{background:#0000001a;padding:8px 12px;border-radius:6px;margin:5px 0;font-family:Courier New,monospace;font-size:.95rem;color:#555}.clear-exam-button{background:#6c757d;color:#fff}.clear-exam-button:hover{transform:translateY(-2px);box-shadow:0 5px 15px #6c757d66}.exam-terminal-controls{display:flex;flex-direction:column;align-items:center;margin-top:20px}.exam-terminal-controls .submit-exam-button,.exam-terminal-controls .clear-exam-button{width:200px}.exam-result{margin-top:30px;padding:25px;border-radius:15px;text-align:center}.exam-result.correct{background:linear-gradient(135deg,#11998e,#38ef7d);color:#fff}.exam-result.incorrect{background:linear-gradient(135deg,#eb3349,#f45c43);color:#fff}.exam-result p{font-size:1.3rem;margin-bottom:15px}.correct-commands{background:#fff3;padding:15px;border-radius:10px;margin:15px 0;text-align:left}.correct-commands p{font-size:1.1rem;margin-bottom:10px}.correct-command{background:#ffffff4d;padding:8px 12px;border-radius:5px;margin:5px 0;font-family:Courier New,monospace;font-size:.95rem}.exam-result-summary{background:#fff;border-radius:15px;padding:25px;margin:30px 0;max-height:400px;overflow-y:auto}.exam-result-summary h3{color:#333;margin-bottom:20px;text-align:center}.exam-result-wrapper{margin-bottom:15px}.exam-result-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:#f8f9fa;border-radius:8px;border:2px solid #ddd}.exam-result-item.correct{border-color:#ddd}.exam-result-item.incorrect{border-radius:8px 8px 0 0;margin-bottom:0;border:2px solid #ddd;border-bottom:none}.result-details{background:#f8f9fa;border:2px solid #ddd;border-top:none;border-radius:0 0 8px 8px;padding:0;margin:0;overflow:hidden}.details-summary{padding:12px 15px;cursor:pointer;font-weight:600;color:#666;list-style:none;-webkit-user-select:none;user-select:none;background:#f8f9fa;transition:background .2s ease}.details-summary::-webkit-details-marker{display:none}.details-summary:before{content:"▶";display:inline-block;margin-right:8px;transition:transform .2s ease}details[open] .details-summary:before{transform:rotate(90deg)}.details-summary:hover{background:#e9ecef}.details-content{padding:15px;border-top:2px solid #ddd;background:#fff}.details-content .problem-title{margin:8px 0;color:#333;font-size:.95rem;line-height:1.6}.details-content .correct-answer{margin:8px 0;color:#28a745;font-weight:600;font-size:.95rem;line-height:1.6}.details-content .correct-answer span{color:#28a745;font-weight:700}.details-content .answer-description{margin:8px 0;color:#666;font-size:.9rem;line-height:1.6}.result-number{font-weight:700;color:#333;min-width:50px}.result-type{flex:1;color:#666}.result-score{font-weight:700;padding:5px 12px;border-radius:15px;min-width:80px;text-align:center}.result-score.correct{background:#28a745;color:#fff}.result-score.incorrect{background:#dc3545;color:#fff}.result-message{font-size:1.3rem;font-weight:600;margin:20px 0;padding:15px;border-radius:10px;text-align:center}.result-message.success{background:linear-gradient(135deg,#d4edda,#c3e6cb);color:#155724;border:2px solid #28a745}.result-message.fail{background:linear-gradient(135deg,#f8d7da,#f5c6cb);color:#721c24;border:2px solid #dc3545}@media(max-width:768px){.mock-exam-page{padding:15px;margin:5px;min-width:auto}.mock-exam-header{padding-bottom:15px}.mock-exam-title{font-size:1.2rem}.mock-exam-info{gap:10px}.exam-info-item{min-width:100px;padding:10px 15px}.info-value{font-size:1rem}.exam-problem-content{padding:15px;overflow-x:hidden}.exam-problem-title{font-size:1.1rem}.windows-gui-container{margin:15px 0}.windows-dialog{max-width:100%;overflow-x:auto}.dialog-content{padding:15px;max-width:100%;overflow-x:hidden}.windows-input,.windows-select{max-width:100%;width:100%;box-sizing:border-box}.input-group{width:100%;max-width:100%;flex-direction:column;align-items:flex-start;gap:8px;margin-left:0;margin-bottom:15px}.input-label{width:100%;font-size:.8rem;margin-bottom:0}.access-path-quiz{padding:15px;margin-bottom:15px}.path-drop-zone{padding:15px}.path-item{padding:8px 12px;font-size:.8rem}.path-number{width:20px;height:20px;font-size:.7rem}.path-options,.options-container{overflow-x:auto}.options-container{gap:8px}.exam-terminal-controls{flex-direction:column}.exam-terminal-controls .submit-exam-button,.exam-terminal-controls .clear-exam-button{max-width:100%}.exam-result-item{flex-wrap:wrap;gap:10px}.result-number,.result-type{min-width:auto}}.exam-info-page{background:#fff;border-radius:20px;padding:40px;box-shadow:0 20px 60px #0000004d;max-width:1000px;margin:20px auto;animation:fadeIn .5s ease-in}.exam-info-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;padding-bottom:20px;border-bottom:2px solid #e0e0e0}.exam-info-title{font-size:1.8rem;color:#333;margin:0}.exam-info-content{color:#333}.info-section{margin-bottom:35px;padding:25px;background:#f8f9fa;border-radius:15px}.info-section h2{font-size:1.8rem;color:#333;margin-bottom:15px}.info-section h3{font-size:1.4rem;color:#667eea;margin-bottom:15px;display:flex;align-items:center;gap:10px}.info-intro{font-size:1.1rem;line-height:1.8;color:#555}.info-section p{font-size:1rem;line-height:1.7;color:#555}.info-section.highlight{background:linear-gradient(135deg,#667eea15,#764ba215);border:2px solid #667eea}.info-section.tips{background:linear-gradient(135deg,#43cea215,#185a9d15);border:2px solid #43cea2}.info-section.warning{background:linear-gradient(135deg,#ff6a0015,#ee097915);border:2px solid #ff6a00}.exam-structure-table{margin-top:20px;background:#fff;border-radius:10px;overflow:hidden}.table-header,.table-row{display:grid;grid-template-columns:1fr 2fr 1fr 1fr 1.5fr;gap:10px;padding:15px;align-items:center}.table-header{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-weight:700;font-size:.95rem}.table-row{border-bottom:1px solid #e0e0e0;font-size:.95rem}.table-row:last-of-type{border-bottom:none}.table-row:hover{background:#f8f9fa}.col-number{font-weight:600;color:#667eea}.col-item{font-weight:500}.col-count,.col-score{text-align:center}.col-type{text-align:center;font-size:.9rem;color:#666}.table-footer{background:#667eea;color:#fff;padding:15px;text-align:center}.total-info{font-size:1.1rem}.tips-list,.warning-list{list-style:none;padding:0;margin-top:15px}.tips-list li,.warning-list li{padding:12px 15px;margin-bottom:10px;background:#fff;border-radius:8px;border-left:4px solid #43cea2;line-height:1.6}.warning-list li{border-left-color:#ff6a00}.tips-list li strong,.warning-list li strong{color:#333;font-weight:600}.practice-cta{margin-top:40px;padding:30px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:15px;text-align:center;color:#fff}.practice-cta p{font-size:1.3rem;margin-bottom:20px;font-weight:500}.start-practice-button{padding:15px 40px;font-size:1.2rem;background:#fff;color:#667eea;border:none;border-radius:10px;cursor:pointer;transition:all .3s ease;font-weight:600}.start-practice-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #ffffff4d}@media(max-width:768px){.exam-info-page{padding:20px;margin:10px}.exam-info-header{padding-bottom:15px}.exam-info-title{font-size:1.3rem}.info-section{padding:20px;margin-bottom:25px}.info-section h2{font-size:1.4rem}.info-section h3{font-size:1.2rem}.table-header,.table-row{grid-template-columns:1fr;gap:5px;padding:10px}.table-header{display:none}.table-row{display:flex;flex-direction:column;gap:8px;padding:15px}.col-number:before{content:"번호: ";font-weight:700;color:#333}.col-item:before{content:"항목: ";font-weight:700;color:#333}.col-count:before{content:"문제 수: ";font-weight:700;color:#333}.col-score:before{content:"배점: ";font-weight:700;color:#333}.col-type:before{content:"유형: ";font-weight:700;color:#333}.col-count,.col-score,.col-type{text-align:left}.practice-cta{padding:20px}.practice-cta p{font-size:1.1rem}.start-practice-button{width:100%;padding:15px}}.options-container{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.options-hint{color:#666;font-size:.9rem;margin-bottom:10px;padding:8px 12px;background:#f5f5f5;border-radius:8px;text-align:center}.option-button{display:flex;align-items:center;gap:12px;padding:15px 20px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;font-size:1rem}.option-button:hover{border-color:#667eea;background:#f8f9ff}.option-button.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215);box-shadow:0 2px 8px #667eea33}.option-button:disabled{cursor:not-allowed;opacity:.7}.option-button:disabled:hover{border-color:#e0e0e0;background:#fff}.option-button.selected:disabled:hover{border-color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215)}.option-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e0e0e0;color:#555;font-weight:600;font-size:.9rem;flex-shrink:0}.option-button.selected .option-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.option-text{flex:1;color:#333;line-height:1.4}.option-check{color:#667eea;font-size:1.2rem;font-weight:700}.exam-options-container{display:flex;flex-direction:column;gap:12px;margin-top:15px}.exam-options-hint{color:#666;font-size:.9rem;margin-bottom:10px;padding:8px 12px;background:#f5f5f5;border-radius:8px;text-align:center}.exam-option-button{display:flex;align-items:center;gap:12px;padding:15px 20px;border:2px solid #e0e0e0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;text-align:left;font-size:1rem;color:#333}.exam-option-button:hover{border-color:#667eea;background:#f8f9ff}.exam-option-button.selected{border-color:#667eea;background:linear-gradient(135deg,#667eea15,#764ba215);box-shadow:0 2px 8px #667eea33}.exam-option-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#e0e0e0;color:#555;font-weight:600;font-size:.9rem;flex-shrink:0}.exam-option-button.selected .exam-option-number{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.exam-option-text{flex:1;line-height:1.4;color:#333}.exam-option-check{color:#667eea;font-size:1.2rem;font-weight:700}
