.question-component{height:100%;display:flex;flex-direction:column;overflow:hidden}.question-component-content{height:100%;display:flex;flex-direction:column;gap:1rem;overflow:hidden;min-height:0}.question-text-section{flex-shrink:0}.question-title{font-size:clamp(1rem,4vw,1.4rem);font-weight:600;color:#f8f9fa;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #3a3f4b}.question-content{margin-bottom:1rem}.question-text{font-size:clamp(.9rem,3.5vw,1.2rem);line-height:1.5;color:#f8f9fa;margin:0;white-space:pre-wrap;word-wrap:break-word}.code-example-section{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.code-example-title{font-size:1.1rem;font-weight:600;color:#f8f9fa;margin:0 0 .5rem;flex-shrink:0}.code-example-container{flex:1;min-height:0;display:flex;flex-direction:column;gap:.75rem;overflow:hidden;height:100%}.code-example-container>div{flex-shrink:1;min-height:0;overflow:hidden}.code-example-container pre{margin:0!important;font-size:13px!important;line-height:1.3!important;height:100%;max-height:none;overflow:auto;border-radius:8px;flex:1}.code-example-container code{font-family:Consolas,Monaco,Courier New,monospace!important;font-size:13px!important;line-height:1.3!important;word-break:break-all;white-space:pre-wrap}.code-example-container .linenumber{font-size:12px!important;color:#adb5bd!important;min-width:2em!important;padding-right:.5em!important}.code-output{background-color:#212529;border:1px solid #495057;border-radius:8px;padding:1rem}.code-output-title{font-size:.875rem;font-weight:600;color:#f8f9fa;margin:0 0 .5rem}.code-output-content{font-family:Consolas,Monaco,Courier New,monospace;font-size:.875rem;line-height:1.4;color:#f8f9fa;margin:0;white-space:pre-wrap;word-wrap:break-word;background-color:#343a40;padding:.75rem;border-radius:4px;border:1px solid #495057}.question-component--loading{justify-content:center;align-items:center}.question-loading{text-align:center;color:#adb5bd}.loading-spinner{width:2rem;height:2rem;border:3px solid #e5e7eb;border-top:3px solid #3b82f6;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.question-component--error{justify-content:center;align-items:center}.question-error{text-align:center;color:#fc8181;max-width:300px}.error-icon{font-size:3rem;margin-bottom:1rem}.question-error h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.question-error p{font-size:.875rem;line-height:1.5;margin:0;color:#f56565}.question-component--empty{justify-content:center;align-items:center}.question-empty{text-align:center;color:#adb5bd;max-width:300px}.empty-icon{font-size:3rem;margin-bottom:1rem}.question-empty h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.question-empty p{font-size:.875rem;line-height:1.5;margin:0}@media (max-width: 768px){.question-component-content{gap:.75rem}.question-title{font-size:1.1rem}.question-text{font-size:1rem;line-height:1.4}.code-example-container{gap:.5rem}.code-example-title{font-size:.95rem;margin-bottom:.25rem}.code-example-container pre{font-size:14px!important;max-height:250px}.code-example-container code{font-size:12px!important;line-height:1.2!important}.code-example-container .linenumber{font-size:11px!important;min-width:1.5em!important}}@media (max-width: 768px) and (orientation: landscape){.question-component-content{gap:.5rem}.question-title{font-size:.85rem;margin-bottom:.25rem}.question-text{font-size:.8rem;line-height:1.3}.question-metadata{gap:.25rem}.difficulty-badge,.category-badge{padding:.125rem .375rem;font-size:.65rem}.code-example-title{font-size:.8rem;margin-bottom:.25rem}.code-example-container pre{font-size:11px!important;max-height:200px;line-height:1.2!important}.code-example-container code{font-size:11px!important;line-height:1.2!important}.code-example-container .linenumber{font-size:10px!important;min-width:1.2em!important;padding-right:.3em!important}}@media (max-width: 640px) and (orientation: landscape) and (max-height: 480px){.question-component-content{gap:.25rem}.question-title{font-size:.8rem;margin-bottom:.25rem}.question-text{font-size:.75rem;line-height:1.2}.difficulty-badge,.category-badge{padding:.1rem .3rem;font-size:.6rem}.code-example-container pre{font-size:10px!important;max-height:150px;line-height:1.1!important}.code-example-container code{font-size:10px!important;line-height:1.1!important}.code-example-container .linenumber{font-size:9px!important;min-width:1em!important;padding-right:.2em!important}.code-example-title{font-size:.75rem;margin-bottom:.125rem}}.code-example-container pre,.code-example-container code{font-size:clamp(8px,2vw,13px)!important;word-wrap:break-word!important;overflow-wrap:break-word!important;white-space:pre-wrap!important;max-width:100%!important}.code-example-container .linenumber{font-size:clamp(7px,1.8vw,12px)!important;min-width:1.5em!important;padding-right:.3em!important}.answer-component{display:flex;flex-direction:column;height:100%;overflow:hidden;position:relative}.answer-component-content{display:flex;flex-direction:column;height:100%;gap:.75rem;overflow:hidden;min-height:0}@media (max-width: 768px){.answer-component{height:100%;overflow:hidden}.answer-component-content{height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:2px 2px 70px;display:flex;flex-direction:column;gap:2px}}.answer-instructions{text-align:center;margin-bottom:.5rem}.answer-instructions-text{font-size:clamp(1rem,3vw,1.3rem);font-weight:600;color:#f8f9fa;margin:0 0 .5rem}.answer-selection-count{font-size:clamp(.8rem,2.5vw,1rem);color:#adb5bd;margin:0;font-style:italic}.answer-options-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto auto;gap:.75rem;flex:1;min-height:0;overflow:visible;height:auto;align-items:start}@media (max-width: 768px){.answer-options-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:repeat(2,55px);gap:3px;padding:0;flex:1}}.answer-option{display:flex;align-items:flex-start;justify-content:flex-start;padding:.75rem;border:2px solid #495057;border-radius:8px;background-color:#343a40;color:#f8f9fa;cursor:pointer;transition:all .2s ease-in-out;font-family:inherit;font-size:clamp(.75rem,2vw,.95rem);line-height:1.4;text-align:left;position:relative;overflow:visible;min-height:100px;height:auto}.answer-option:hover:not(:disabled){border-color:#0d6efd;background-color:#495057;transform:translateY(-2px);box-shadow:0 4px 12px #0d6efd26}.answer-option:focus{outline:none;border-color:#0d6efd;box-shadow:0 0 0 3px #0d6efd33}.answer-option:disabled{cursor:not-allowed;opacity:.8}.answer-option--selected{border-color:#0d6efd;background-color:#1e3a8a;color:#93c5fd}.answer-option--selected:hover:not(:disabled){border-color:#0b5ed7;background-color:#1e40af}.answer-option--submitted{cursor:default}.answer-option--submitted:hover{transform:none;box-shadow:none}.answer-option--correct{border-color:#198754;background-color:#166534;color:#86efac}.answer-option--incorrect{border-color:#dc3545;background-color:#991b1b;color:#fca5a5}.answer-option-content{display:block;width:100%;height:100%}.answer-option-text{width:100%;word-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;white-space:normal;line-height:1.4;overflow-wrap:break-word;display:block}.answer-option-status{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:1rem;font-weight:700;flex-shrink:0}.answer-option-status--incorrect{color:#fc8181}.answer-submit-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-top:auto;padding-top:1rem}.answer-desktop-submit{display:block}@media (max-width: 768px){.answer-desktop-submit{display:none!important}}.answer-submit-button{padding:.75rem 2rem;border:none;border-radius:8px;font-size:clamp(1rem,3vw,1.2rem);font-weight:600;cursor:pointer;transition:all .2s ease-in-out;min-width:140px}.answer-submit-button--enabled{background-color:#0d6efd;color:#fff}.answer-submit-button--enabled:hover{background-color:#0b5ed7;transform:translateY(-1px);box-shadow:0 4px 12px #0d6efd4d}.answer-submit-button--enabled:focus{outline:none;box-shadow:0 0 0 3px #0d6efd4d}.answer-submit-button--disabled{background-color:#6c757d;color:#adb5bd;cursor:not-allowed}.answer-footer{display:none}@media (max-width: 768px){.answer-footer{display:flex!important;position:fixed;bottom:0;left:0;right:0;background:#2a2d3a;border-top:1px solid #4a5568;padding:8px;z-index:10000;justify-content:center;align-items:center;min-height:60px;padding-bottom:calc(8px + env(safe-area-inset-bottom,12px));padding-bottom:calc(8px + constant(safe-area-inset-bottom,12px))}.answer-footer .answer-submit-section{margin:0;padding:0;background:transparent;position:static;border:none;display:flex;width:100%;justify-content:center;max-width:320px}}@media (max-width: 768px){.answer-instructions,.answer-instructions-text,.answer-selection-count{display:none}.answer-option{padding:3px;font-size:.65rem;border-radius:4px;border-width:1px;min-height:auto;height:100%;align-items:center;justify-content:center;text-align:center;line-height:1.1}.answer-option-text{font-size:.65rem;line-height:1.1}.answer-submit-button{padding:6px 16px;font-size:.8rem;width:auto;min-width:100px;border-radius:4px}}@media (max-width: 768px) and (orientation: landscape){.answer-component-content,.answer-options-grid{gap:.25rem}.answer-option{padding:.375rem;font-size:.75rem;line-height:1.2;border-radius:4px}.answer-instructions-text{font-size:.85rem}.answer-selection-count{font-size:.75rem}.answer-submit-button{padding:.5rem 1.5rem;font-size:.85rem;min-width:120px}}@media (max-width: 640px) and (orientation: landscape) and (max-height: 480px){.answer-instructions{margin-bottom:.25rem}.answer-instructions-text{font-size:.8rem}.answer-selection-count{font-size:.7rem}.answer-option{padding:.25rem;font-size:.7rem}.answer-submit-section{padding-top:.5rem}.answer-submit-button{padding:.375rem 1rem;font-size:.8rem;min-width:100px}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.answer-option{border-width:1px}.answer-option:focus{box-shadow:0 0 0 2px #3498db33}}@media (max-width: 768px){.mobile-mc-options-hidden{display:none!important}}@media (max-width: 768px){.app-right-column .answer-component{height:100vh!important;height:100dvh!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;position:relative!important;background:#2a2d3a!important}.app-right-column .answer-component .answer-component-content{flex:1!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:8px 8px 0!important}.answer-instructions{flex-shrink:0!important;margin:0 0 4px!important;padding:0!important}.answer-instructions-text{font-size:.8rem!important;margin:0!important;line-height:1.2!important;text-align:center!important}.answer-selection-count{font-size:.7rem!important;margin:2px 0 0!important;text-align:center!important}.answer-options-grid{flex:1!important;display:grid!important;grid-template-columns:1fr 1fr!important;grid-template-rows:1fr 1fr!important;gap:4px!important;padding:0!important;margin:0!important;min-height:0!important;overflow:hidden!important}.answer-option{display:flex!important;align-items:center!important;justify-content:center!important;padding:4px!important;border:1px solid #495057!important;border-radius:4px!important;background-color:#343a40!important;color:#f8f9fa!important;cursor:pointer!important;font-size:.7rem!important;line-height:1.2!important;text-align:center!important;transition:all .2s ease!important;min-height:0!important;overflow:hidden!important}.answer-option:hover:not(:disabled){border-color:#0d6efd!important;background-color:#495057!important}.answer-option--selected{border-color:#0d6efd!important;background-color:#1e3a8a!important;color:#93c5fd!important}.answer-option-text{font-size:.7rem!important;line-height:1.2!important;word-wrap:break-word!important;overflow-wrap:break-word!important}.answer-desktop-submit{display:none!important}.app-right-column .answer-component .answer-footer{position:fixed!important;bottom:0!important;left:0!important;right:0!important;height:120px!important;background:red!important;border-top:5px solid #00ff00!important;display:flex!important;align-items:center!important;justify-content:center!important;z-index:999999!important;padding:16px!important;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px))!important;padding-bottom:calc(8px + constant(safe-area-inset-bottom,0px))!important;transform:translateZ(0)!important;-webkit-transform:translateZ(0)!important}.answer-footer .answer-submit-section{margin:0!important;padding:0!important;width:100%!important;max-width:300px!important;display:flex!important;justify-content:center!important}.answer-footer .answer-submit-button{background-color:#0d6efd!important;color:#fff!important;border:none!important;padding:4px 6px!important;font-size:.65rem!important;font-weight:600!important;border-radius:4px!important;min-width:50px!important;max-width:70px!important;width:auto!important;height:40px!important;cursor:pointer!important;transition:all .2s ease!important}.answer-footer .answer-submit-button--enabled{background-color:#0d6efd!important;color:#fff!important}.answer-footer .answer-submit-button--disabled{background-color:#6c757d!important;color:#adb5bd!important;cursor:not-allowed!important}.answer-footer .answer-submit-button:hover:not(:disabled){background-color:#0b5ed7!important;transform:translateY(-1px)!important}.explanation-footer .explanation-button,.navigation-button{min-width:50px!important;max-width:70px!important;padding:4px 6px!important;font-size:.65rem!important;height:40px!important}.explanation-footer .explanation-navigation,.navigation-buttons{gap:6px!important;max-width:280px!important}}@media (min-width: 769px){.answer-footer{display:none!important}.answer-desktop-submit{display:block!important}}.explanation-component{display:flex;flex-direction:column;height:100%;overflow:hidden}.explanation-component-content{display:flex;flex-direction:column;height:100%;gap:clamp(.375rem,1.5vw,.75rem);overflow:hidden;min-height:0}@media (min-width: 769px){.explanation-component-content{overflow-y:auto;overflow-x:hidden;padding-right:8px}.explanation-component-content::-webkit-scrollbar{width:6px}.explanation-component-content::-webkit-scrollbar-track{background:#2a2d3a;border-radius:3px}.explanation-component-content::-webkit-scrollbar-thumb{background:#4a5568;border-radius:3px}.explanation-component-content::-webkit-scrollbar-thumb:hover{background:#718096}}.explanation-header{display:flex;align-items:center;gap:clamp(.5rem,2vw,1rem);padding:clamp(.5rem,2vw,1rem);border-radius:12px;margin-bottom:.5rem}.explanation-header--correct{background-color:#2f855a;border:2px solid #198754;color:#9ae6b4}.explanation-header--incorrect{background-color:#c53030;border:2px solid #dc3545;color:#fed7d7}.explanation-result-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;font-size:1.5rem;font-weight:700;flex-shrink:0}.explanation-header--correct .explanation-result-icon{background-color:#198754;color:#fff}.explanation-header--incorrect .explanation-result-icon{background-color:#dc3545;color:#fff}.explanation-result-text{flex:1}.explanation-result-title{font-size:clamp(1.1rem,3vw,1.5rem);font-weight:700;margin:0 0 .25rem}.explanation-result-subtitle{font-size:clamp(.9rem,2.5vw,1.1rem);margin:0;opacity:.9}.explanation-summary{background-color:#2d3748;border:1px solid #4a5568;border-radius:8px;padding:1rem}.explanation-summary-stats{display:flex;flex-direction:column;gap:.5rem}.explanation-stat{display:flex;justify-content:space-between;align-items:center;font-size:clamp(.85rem,2vw,1.1rem)}.explanation-stat-label{color:#a0aec0;font-weight:500}.explanation-stat-value{color:#e2e8f0;font-weight:600}.explanation-options{flex:1;min-height:0;overflow:hidden}.explanation-options-title{font-size:clamp(1rem,2.5vw,1.3rem);font-weight:600;color:#e2e8f0;margin:0 0 .75rem}.explanation-options-list{display:flex;flex-direction:column;gap:.75rem}.explanation-option{display:flex;align-items:center;gap:clamp(.375rem,1.5vw,.75rem);padding:clamp(.5rem,2vw,1rem);border-radius:8px;border:2px solid #4a5568;background-color:#4a5568;transition:all .2s ease-in-out}.explanation-option--correct{border-color:#198754;background-color:#2f855a}.explanation-option--incorrect-selected{border-color:#dc3545;background-color:#c53030}.explanation-option--correct-selected{border-color:#198754;background-color:#2f855a;box-shadow:0 0 0 2px #38a16933}.explanation-option-indicator{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background-color:#2d3748;color:#e2e8f0;font-weight:700;font-size:.9rem;flex-shrink:0}.explanation-option--correct .explanation-option-indicator{background-color:#198754;color:#fff}.explanation-option--incorrect-selected .explanation-option-indicator{background-color:#dc3545;color:#fff}.explanation-option--correct-selected .explanation-option-indicator{background-color:#198754;color:#fff}.explanation-option-content{flex:1;display:flex;flex-direction:column;gap:.5rem}.explanation-option-text{font-size:clamp(.8rem,2vw,.95rem);line-height:1.4;color:#2c3e50;word-wrap:break-word}.explanation-option-status{display:flex;gap:.5rem;flex-wrap:wrap}.explanation-option-badge{padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.explanation-option-badge--correct{background-color:#27ae60;color:#fff}.explanation-option-badge--selected{background-color:#e74c3c;color:#fff}.explanation-option-badge--correct-selected{background-color:#27ae60;color:#fff}.explanation-option-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;flex-shrink:0}.correct-icon{color:#27ae60;font-size:1.2rem;font-weight:700}.incorrect-icon{color:#e74c3c;font-size:1.2rem;font-weight:700}.explanation-details{background-color:#2d3748;border:1px solid #4a5568;border-radius:8px;padding:1rem}.explanation-details-title{font-size:clamp(1rem,2.5vw,1.3rem);font-weight:600;color:#e2e8f0;margin:0 0 .75rem}.explanation-details-content{color:#e2e8f0}.explanation-text{font-size:clamp(.85rem,2.2vw,1.1rem);line-height:1.6;margin:0;white-space:pre-wrap;word-wrap:break-word}.explanation-navigation{display:flex;gap:1rem;justify-content:center;margin-top:auto;padding:1rem;flex-shrink:0}.explanation-button{display:flex;align-items:center;gap:.5rem;padding:clamp(.5rem,2vw,.75rem) clamp(1rem,3vw,1.5rem);border:2px solid transparent;border-radius:8px;font-size:clamp(.9rem,2.2vw,1.1rem);font-weight:600;cursor:pointer;transition:all .2s ease-in-out;text-decoration:none;flex:1;max-width:200px;justify-content:center}.explanation-button:disabled{opacity:.5;cursor:not-allowed}.explanation-button--redo{background-color:#718096;color:#fff;border-color:#718096}.explanation-button--redo:hover:not(:disabled){background-color:#4a5568;border-color:#4a5568;transform:translateY(-1px);box-shadow:0 4px 12px #7180964d}.explanation-button--next{background-color:#4299e1;color:#fff;border-color:#4299e1}.explanation-button--next:hover:not(:disabled){background-color:#3182ce;border-color:#3182ce;transform:translateY(-1px);box-shadow:0 4px 12px #4299e14d}.explanation-button:focus{outline:none;box-shadow:0 0 0 3px #3498db33}.explanation-button-icon{font-size:1rem;font-weight:700}.explanation-button-text{font-size:1.1rem}.explanation-error{text-align:center;color:#dc3545;padding:1rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:8px}.explanation-error p{margin:0;font-size:.9rem}.explanation-desktop-nav{display:block}.explanation-footer{display:none}@media (max-width: 768px){.explanation-desktop-nav{display:none!important}.explanation-footer{display:flex!important;position:fixed;bottom:0;left:0;right:0;background:#2a2d3a;border-top:1px solid #4a5568;padding:6px;z-index:9999;justify-content:center;align-items:center;height:50px;padding-bottom:calc(6px + env(safe-area-inset-bottom,0))}.explanation-footer .explanation-navigation{margin:0;padding:0;background:transparent;position:static;border:none;gap:6px}}@media (max-width: 768px){.explanation-component{position:relative;height:100%;overflow:hidden}.explanation-component-content{gap:3px;overflow-y:auto;-webkit-overflow-scrolling:touch;height:100%;padding:4px}.explanation-header{padding:.75rem;gap:.75rem}.explanation-result-icon{width:36px;height:36px;font-size:1.1rem}.explanation-result-title{font-size:1.2rem}.explanation-result-subtitle{font-size:.95rem}.explanation-option{padding:.5rem;gap:.5rem}.explanation-option-indicator{width:24px;height:24px;font-size:.75rem}.explanation-option-text{font-size:.95rem}.explanation-navigation{gap:.5rem}.explanation-details-title{font-size:1.1rem}.explanation-text{font-size:.95rem}.explanation-stat{font-size:.9rem}.explanation-options-title{font-size:1.1rem}.explanation-button{padding:6px 12px;min-width:80px;font-size:.75rem}}@media (max-width: 768px) and (orientation: landscape){.explanation-component-content{gap:.25rem}.explanation-header{padding:.5rem;gap:.5rem}.explanation-result-icon{width:32px;height:32px;font-size:1rem}.explanation-result-title{font-size:.9rem}.explanation-result-subtitle{font-size:.75rem}.explanation-summary,.explanation-details{padding:.5rem}.explanation-option{padding:.375rem;gap:.375rem}.explanation-option-indicator{width:20px;height:20px;font-size:.7rem}.explanation-option-text{font-size:.75rem;line-height:1.2}.explanation-navigation{gap:.375rem;padding-top:.5rem}.explanation-button{padding:.375rem .75rem;min-width:90px;font-size:.8rem}}@media screen and (max-height: 480px){.explanation-component{padding:.5rem}.explanation-component-content{gap:.5rem}.explanation-header{padding:.5rem}.explanation-result-icon{width:36px;height:36px;font-size:1.1rem}.explanation-summary,.explanation-details{padding:.75rem}.explanation-option{padding:.5rem}.explanation-navigation{flex-direction:column;gap:.5rem}.explanation-button{padding:.5rem 1rem;min-width:auto;width:100%}}@media screen and (max-width: 480px){.explanation-navigation{flex-direction:column;gap:.75rem}.explanation-button{width:100%;min-width:auto}.explanation-summary-stats{gap:.75rem}.explanation-stat{flex-direction:column;align-items:flex-start;gap:.25rem}}@media (-webkit-min-device-pixel-ratio: 2),(min-resolution: 192dpi){.explanation-option,.explanation-header,.explanation-button{border-width:1px}}.explanation-code-output{background-color:#2d3748;border:1px solid #4a5568;border-radius:8px;padding:clamp(.5rem,2vw,1rem)}.explanation-code-output-title{font-size:clamp(.9rem,2.2vw,1.1rem);font-weight:600;color:#e2e8f0;margin:0 0 clamp(.375rem,1.5vw,.75rem) 0}.explanation-code-output-content{background:#1a202c;border-radius:6px;padding:clamp(.5rem,1.5vw,.75rem);overflow:auto}.explanation-code-output-content pre{font-family:Consolas,Monaco,Courier New,monospace;font-size:clamp(.8rem,2vw,1rem);line-height:1.4;color:#e2e8f0;margin:0;white-space:pre-wrap;word-wrap:break-word}@media (max-width: 768px){.explanation-button,.navigation-button{min-width:40px!important;max-width:60px!important;padding:3px 5px!important;font-size:.6rem!important}}.explanation-button,.navigation-button{min-width:40px!important;max-width:60px!important;padding:3px 5px!important;font-size:.6rem!important;height:30px!important}button.explanation-button.explanation-button--next,button.explanation-button.explanation-button--redo,button.navigation-button.navigation-button--next,button.navigation-button.navigation-button--redo{min-width:30px!important;max-width:50px!important;padding:2px 4px!important;font-size:.5rem!important;height:25px!important;width:auto!important}.explanation-navigation,.navigation-buttons{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;gap:4px!important;width:100%!important;max-width:200px!important;justify-content:center!important;align-items:center!important}button.explanation-button,button.navigation-button{flex-shrink:1!important;flex-grow:0!important;flex-basis:auto!important;white-space:nowrap!important}.explanation-summary,.explanation-options{display:none!important}button.explanation-button.explanation-button--next,button.explanation-button.explanation-button--redo,button.navigation-button.navigation-button--next,button.navigation-button.navigation-button--redo{min-width:60px!important;max-width:80px!important;padding:6px 10px!important;font-size:.75rem!important;height:36px!important;width:auto!important}.explanation-navigation,.navigation-buttons{gap:8px!important;max-width:250px!important}.navigation-component{display:flex;flex-direction:column;gap:1rem;padding:1rem;background-color:var(--surface-color, #ffffff);border-radius:var(--border-radius, 8px);border:1px solid var(--border-color, #e0e0e0)}.navigation-component-content{display:flex;flex-direction:column;gap:1rem;width:100%}.navigation-progress{display:flex;flex-direction:column;gap:.5rem;align-items:center}.navigation-progress-text{font-size:.875rem;color:var(--text-secondary, #666666);font-weight:500;text-align:center}.navigation-progress-bar{width:100%;height:4px;background-color:var(--progress-bg, #f0f0f0);border-radius:2px;overflow:hidden}.navigation-progress-fill{height:100%;background-color:var(--primary-color, #007acc);transition:width .3s ease-in-out;border-radius:2px}.navigation-buttons{display:flex;gap:.75rem;justify-content:center;align-items:center}.navigation-button{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;border:2px solid transparent;border-radius:var(--border-radius, 8px);font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s ease-in-out;flex:1;max-width:200px;justify-content:center;text-align:center;position:relative;overflow:hidden}.navigation-button:focus{outline:none;box-shadow:0 0 0 3px var(--focus-ring, rgba(0, 122, 204, .3))}.navigation-button--redo.navigation-button--enabled{background-color:var(--secondary-color, #f8f9fa);color:var(--text-primary, #333333);border-color:var(--border-color, #e0e0e0)}.navigation-button--redo.navigation-button--enabled:hover{background-color:var(--secondary-hover, #e9ecef);border-color:var(--border-hover, #c0c0c0);transform:translateY(-1px)}.navigation-button--redo.navigation-button--enabled:active{transform:translateY(0);background-color:var(--secondary-active, #dee2e6)}.navigation-button--next.navigation-button--enabled{background-color:var(--primary-color, #007acc);color:var(--text-on-primary, #ffffff);border-color:var(--primary-color, #007acc)}.navigation-button--next.navigation-button--enabled:hover{background-color:var(--primary-hover, #005a9e);border-color:var(--primary-hover, #005a9e);transform:translateY(-1px)}.navigation-button--next.navigation-button--enabled:active{transform:translateY(0);background-color:var(--primary-active, #004578)}.navigation-button--disabled{background-color:var(--disabled-bg, #f5f5f5);color:var(--disabled-text, #999999);border-color:var(--disabled-border, #e0e0e0);cursor:not-allowed;opacity:.6}.navigation-button--disabled:hover{transform:none;background-color:var(--disabled-bg, #f5f5f5);border-color:var(--disabled-border, #e0e0e0)}.navigation-button-icon{font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center}.navigation-button-text{font-size:.875rem;line-height:1.2;white-space:nowrap}.navigation-button--redo .navigation-button-icon{animation:none}.navigation-button--redo:disabled .navigation-button-icon{animation:spin 1s linear infinite}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 768px){.navigation-component{padding:.75rem;gap:.75rem}.navigation-buttons{flex-direction:column;gap:.5rem}.navigation-button{width:100%;min-width:unset;padding:.875rem 1rem}.navigation-progress-text{font-size:.8125rem}}@media (max-width: 768px) and (orientation: landscape){.navigation-component{padding:.5rem;gap:.5rem}.navigation-buttons{flex-direction:row;gap:.5rem}.navigation-button{padding:4px 6px;min-width:50px;max-width:70px;font-size:.8125rem}.navigation-progress{gap:.25rem}.navigation-progress-text{font-size:.75rem}.navigation-progress-bar{height:3px}}@media (prefers-contrast: high){.navigation-button--enabled{border-width:2px}.navigation-progress-bar{border:1px solid var(--text-primary, #000000)}.navigation-progress-fill{background-color:var(--text-primary, #000000)}}@media (prefers-reduced-motion: reduce){.navigation-button{transition:none}.navigation-button:hover{transform:none}.navigation-progress-fill{transition:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#1e1e1e;color:#f8f9fa;overflow:hidden;position:fixed;width:100%;height:100%}@media (max-width: 768px){html,body{height:100vh;height:calc(var(--vh, 1vh) * 100);width:100vw;overflow:hidden;position:fixed}}.app{height:100vh;width:100vw;overflow:hidden;background:#1e1e1e}@media (max-width: 768px){.app{height:100vh;height:calc(var(--vh, 1vh) * 100);width:100vw;overflow:hidden;display:flex;flex-direction:column}}.app-loading{display:flex;align-items:center;justify-content:center;height:100vh;background:linear-gradient(135deg,#2a2d3a,#212529);color:#f8f9fa}.app-loading-content{text-align:center;animation:fadeIn .6s ease-in}.app-loading-spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}.app-loading-content h2{font-size:1.5rem;margin-bottom:8px;font-weight:600}.app-loading-content p{font-size:1rem;opacity:.9}.app-error{display:flex;align-items:center;justify-content:center;height:100vh;background:#2d1b1b;color:#fc8181}.app-error-content{text-align:center;max-width:400px;padding:2rem}.app-error-icon{font-size:3rem;margin-bottom:1rem}.app-error-content h2{font-size:1.5rem;margin-bottom:1rem;color:#fc8181}.app-error-content p{margin-bottom:1.5rem;color:#fc8181}.app-error-retry{padding:12px 24px;background:#fc8181;color:#1a1a1a;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:background-color .2s}.app-error-retry:hover{background:#f56565}.app-main{height:100vh;display:flex;flex-direction:column;overflow:hidden}.app-container{display:grid;grid-template-columns:65% 35%;gap:16px;height:100vh;width:100vw;padding:16px;background:#1e1e1e;overflow:hidden}@media (max-width: 768px){.app-container{display:flex;flex-direction:column;flex:1;overflow:hidden;gap:8px;padding:8px;min-height:0}}.app-left-column{display:flex;flex-direction:column;overflow:hidden;background:#2a2d3a;border-radius:8px;border:1px solid #3a3f4b}.app-right-column{display:flex;flex-direction:column;overflow:hidden;background:#2a2d3a;border-radius:8px;border:1px solid #3a3f4b;position:relative}@media (max-width: 768px){.app-right-column{border-radius:0!important;border:none!important;background:transparent!important;padding:0!important;margin:0!important}}@media (max-width: 768px) and (orientation: portrait){.app-left-column{flex:0 0 auto;max-height:calc(var(--vh, 1vh) * 40);overflow-y:auto;-webkit-overflow-scrolling:touch}.app-right-column{flex:1;min-height:0;max-height:calc(var(--vh, 1vh) * 55);overflow:hidden;display:flex;flex-direction:column}}.app-column-error{display:flex;align-items:center;justify-content:center;height:100%;color:#adb5bd;background:#2a2d3a;border-radius:8px;border:2px dashed #3a3f4b;font-size:1rem}.app-navigation{position:fixed;bottom:16px;left:16px;right:16px;background:#000c;color:#fff;padding:12px;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:none;z-index:1000}.app.development .app-navigation{display:block}.app-error-boundary{display:flex;align-items:center;justify-content:center;height:100vh;background:#1e1e1e;color:#f8f9fa}.app-error-boundary-content{text-align:center;max-width:600px;padding:2rem;background:#2a2d3a;border-radius:12px;box-shadow:0 4px 6px #0000004d}.app-error-boundary-content h1{color:#fc8181;margin-bottom:1rem}.app-error-boundary-content details{margin:1rem 0;text-align:left}.app-error-boundary-content summary{cursor:pointer;padding:8px;background:#3a3f4b;border-radius:4px;margin-bottom:8px;color:#f8f9fa}.app-error-boundary-content pre{background:#212529;padding:12px;border-radius:4px;overflow:auto;font-size:.85rem;max-height:200px;color:#f8f9fa}.app-error-boundary-content button{padding:12px 24px;background:#4299e1;color:#1a1a1a;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:background-color .2s}.app-error-boundary-content button:hover{background:#3182ce}@media (max-width: 768px){.app-container{padding:12px;gap:12px}}@media (max-width: 480px){.app-container{padding:8px;gap:8px;grid-template-columns:65% 35%}.app-loading-content h2{font-size:1.3rem}.app-loading-content p{font-size:.9rem}}@media (max-height: 500px) and (orientation: landscape){.app-container{padding:6px;gap:6px}.app-loading-content{transform:scale(.9)}}@media screen and (max-width: 768px) and (orientation: landscape){.app-container{padding:8px;gap:8px;grid-template-columns:65% 35%}.app-left-column,.app-right-column{padding:8px}}@media screen and (max-width: 640px) and (orientation: landscape) and (max-height: 480px){.app-container{padding:4px;gap:4px;grid-template-columns:65% 35%}.app-left-column,.app-right-column{padding:6px}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}body{overflow:hidden!important}#root{height:100vh;overflow:hidden}@media (max-width: 768px){.explanation-button--next,.navigation-button--next{background-color:red!important;color:#fff!important;border-color:red!important}}:root{--primary-color: #667eea;--primary-dark: #764ba2;--secondary-color: #64748b;--success-color: #10b981;--error-color: #ef4444;--warning-color: #f59e0b;--text-primary: #1f2937;--text-secondary: #6b7280;--background-primary: #ffffff;--background-secondary: #f9fafb;--border-color: #e5e7eb;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1);--border-radius: .75rem;--transition: all .3s ease;--safe-area-inset-top: env(safe-area-inset-top);--safe-area-inset-right: env(safe-area-inset-right);--safe-area-inset-bottom: env(safe-area-inset-bottom);--safe-area-inset-left: env(safe-area-inset-left)}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{font-size:16px;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;-ms-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto;overscroll-behavior:none;overscroll-behavior-y:none;overscroll-behavior-x:none;height:100%;height:100vh;height:100dvh;overflow:hidden}body{margin:0;padding: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;color:var(--text-primary);background:var(--background-secondary);line-height:1.6;height:100%;height:100vh;height:100dvh;overflow:hidden;position:fixed;width:100%;overscroll-behavior:none;overscroll-behavior-y:none;overscroll-behavior-x:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;touch-action:manipulation}.card-content,.card-question,.card-answer,.card-explanation,.code-example{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}h1,h2,h3,h4,h5,h6{line-height:1.2}button{font-family:inherit;cursor:pointer;touch-action:manipulation;-webkit-appearance:none;-moz-appearance:none;appearance:none}button:disabled{cursor:not-allowed;opacity:.6}a{color:var(--primary-color);text-decoration:none;-webkit-tap-highlight-color:transparent}a:hover{text-decoration:underline}input,textarea,select{font-size:16px;-webkit-appearance:none;-moz-appearance:none;appearance:none}.container{max-width:1280px;margin:0 auto;padding:0 1rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.mobile-only{display:none}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}}.safe-top{padding-top:env(safe-area-inset-top)}.safe-bottom{padding-bottom:env(safe-area-inset-bottom)}.safe-left{padding-left:env(safe-area-inset-left)}.safe-right{padding-right:env(safe-area-inset-right)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--background-secondary)}::-webkit-scrollbar-thumb{background:var(--text-secondary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-primary)}@media (max-width: 768px){::-webkit-scrollbar{width:4px;height:4px}}body.no-scroll{overflow:hidden;position:fixed;width:100%;height:100%}@supports (-webkit-touch-callout: none){body{min-height:-webkit-fill-available}.app-layout{position:fixed;inset:0;overflow-y:auto;-webkit-overflow-scrolling:touch}}@media screen and (max-width: 768px){*{max-height:999999px}}#root{width:100%;height:100%;height:100vh;height:100dvh;overflow:hidden;position:relative}@media (orientation: landscape) and (max-height: 500px){:root{font-size:14px}}@media (orientation: landscape) and (max-height: 400px){:root{font-size:12px}}@media (prefers-contrast: high){:root{--shadow-sm: 0 0 0 1px currentColor;--shadow-md: 0 0 0 2px currentColor;--shadow-lg: 0 0 0 3px currentColor}}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}@media print{body{background:#fff;color:#000}.no-print{display:none!important}}
