body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f0f2f5;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box}h1,h2,h3,h4,h5,h6{margin-top:0}button,input,select{font-family:inherit}button{cursor:pointer}.unit-converter{background-color:#fff;background-color:var(--card-background,#fff);border:2px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius,12px);box-shadow:0 6px 15px #00000012;box-shadow:var(--shadow,0 6px 15px #00000012);font-family:Comic Sans MS,Yuanti SC,YouYuan,Arial Rounded MT Bold,Varela Round,sans-serif;font-family:var(--font-family,"Comic Sans MS","Yuanti SC","YouYuan","Arial Rounded MT Bold","Varela Round",sans-serif);margin:20px auto;max-width:750px;padding:25px}.unit-converter h2{color:#4a6bdf;color:var(--primary-color,#4a6bdf);font-size:2rem;font-weight:700;margin-bottom:25px;padding-bottom:12px;position:relative;text-align:center;text-shadow:1px 1px 2px #0000001a}.unit-converter h2:after{background:linear-gradient(90deg,#6b87eb,#ffc08a);background:linear-gradient(to right,var(--primary-light,#6b87eb),var(--secondary-light,#ffc08a));border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:100px}.type-selector{margin-bottom:25px}.type-selector h3{color:#4a6bdf;color:var(--primary-color,#4a6bdf);display:inline-block;font-size:1.3rem;margin-bottom:15px;padding-bottom:6px;position:relative}.type-selector h3:after{background:linear-gradient(90deg,#6b87eb,#0000);background:linear-gradient(to right,var(--primary-light,#6b87eb),#0000);border-radius:2px;bottom:0;content:"";height:2px;left:0;position:absolute;width:100%}.type-buttons{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.type-button{background-color:#f8f9ff;background-color:var(--background-light,#f8f9ff);border:2px solid #e1e8ff;border-radius:8px;border-radius:var(--border-radius-sm,8px);box-shadow:0 2px 6px #00000008;color:#3a3a4a;color:var(--text-primary,#3a3a4a);cursor:pointer;flex:1 1;font-size:1.1rem;font-weight:600;max-width:200px;min-width:120px;padding:14px 18px;text-align:center;transition:all .3s ease}.type-button:hover{border-color:#6b87eb;border-color:var(--primary-light,#6b87eb);box-shadow:0 4px 10px #4a6bdf33;transform:translateY(-3px)}.type-button.active{background-color:#4a6bdf;background-color:var(--primary-color,#4a6bdf);border-color:#4a6bdf;border-color:var(--primary-color,#4a6bdf);box-shadow:0 4px 10px #4a6bdf4d;color:#fff}.conversion-section{background-color:#f8f9ff;background-color:var(--background-light,#f8f9ff);border:1px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius,12px);box-shadow:0 4px 8px #0000000a;margin-bottom:20px;padding:25px}.conversion-type-title{color:#4a6bdf;color:var(--primary-color,#4a6bdf);font-size:1.4rem;font-weight:700;margin-bottom:8px;text-align:center}.conversion-type-description{background-color:#69a5ff14;border-left:4px solid #6b87eb;border-left:4px solid var(--primary-light,#6b87eb);border-radius:8px;border-radius:var(--border-radius-sm,8px);color:#5a5a6e;color:var(--text-secondary,#5a5a6e);font-size:1rem;line-height:1.5;margin-bottom:20px;padding:10px 15px;text-align:center}.unit-row{align-items:center;display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.unit-selector{flex:1 1;min-width:180px}.unit-selector label{color:#5a5a6e;color:var(--text-secondary,#5a5a6e);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.unit-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a6bdf' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:18px;border:2px solid #6b87eb;border:2px solid var(--primary-light,#6b87eb);border-radius:8px;border-radius:var(--border-radius-sm,8px);box-shadow:0 2px 4px #00000005;color:#3a3a4a;color:var(--text-primary,#3a3a4a);font-size:1.1rem;padding:14px;transition:all .3s ease;width:100%}.unit-select:focus{border-color:#4a6bdf;border-color:var(--primary-color,#4a6bdf);box-shadow:0 0 0 3px #4a6bdf33;outline:none}.swap-button{align-items:center;background-color:#ff9838;background-color:var(--secondary-color,#ff9838);border:none;border-radius:50%;box-shadow:0 4px 10px #ff98384d;color:#fff;cursor:pointer;display:flex;font-size:1.5rem;height:50px;justify-content:center;line-height:1;margin:0 10px;transition:all .3s ease;width:50px}.swap-button:hover{background-color:#e56e00;background-color:var(--secondary-dark,#e56e00);box-shadow:0 6px 15px #ff983866;transform:rotate(180deg)}.value-row{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.value-input-container{flex:1 1;min-width:180px}.value-input-container label{color:#5a5a6e;color:var(--text-secondary,#5a5a6e);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.value-input{background-color:#fff;border:2px solid #6b87eb;border:2px solid var(--primary-light,#6b87eb);border-radius:8px;border-radius:var(--border-radius-sm,8px);box-shadow:0 2px 4px #00000005;color:#3a3a4a;color:var(--text-primary,#3a3a4a);font-size:1.1rem;font-weight:600;padding:14px;text-align:center;transition:all .3s ease;width:100%}.value-input:focus{box-shadow:0 0 0 3px #4a6bdf33;outline:none}.value-input.result,.value-input:focus{border-color:#4a6bdf;border-color:var(--primary-color,#4a6bdf)}.value-input.result{background-color:#4a6bdf0d;color:#4a6bdf;color:var(--primary-color,#4a6bdf);font-weight:700}.unit-examples{background-color:#fff;border:1px solid #e1e8ff;border-radius:8px;border-radius:var(--border-radius-sm,8px);margin-top:20px;padding:18px}.unit-examples h4{border-bottom:1px dashed #d1dcff;color:#4a6bdf;color:var(--primary-color,#4a6bdf);font-size:1.1rem;margin-bottom:12px;margin-top:0;padding-bottom:8px}.example-row{border-radius:8px;border-radius:var(--border-radius-sm,8px);display:flex;justify-content:space-between;margin-bottom:8px;padding:8px;transition:all .2s ease}.example-row:hover{background-color:#4a6bdf0d}.example-row:last-child{margin-bottom:0}.example-left,.example-right{font-weight:600}.example-left{color:#ff9838;color:var(--secondary-color,#ff9838)}.example-right{color:#4a6bdf;color:var(--primary-color,#4a6bdf)}.equal-sign{color:#767686;color:var(--text-light,#767686)}.bubble{animation:float 8s ease-in-out infinite}.bubble-1{animation-delay:0s;height:60px;width:60px}.bubble-2{animation-delay:2s}.bubble-3{animation-delay:4s;height:80px;width:80px}.bubble-4{animation-delay:6s}@media (max-width:768px){.unit-converter{border-radius:8px;border-radius:var(--border-radius-sm,8px);margin:10px;padding:20px 15px}.unit-converter h2{font-size:1.6rem;padding-bottom:10px}.unit-converter h2:after{height:3px;width:80px}.conversion-section{padding:20px 15px}.type-button{flex-basis:calc(50% - 12px);flex-grow:0;flex-shrink:0;font-size:1rem;max-width:calc(50% - 12px);padding:12px 10px}.unit-row{flex-direction:column}.swap-button{margin:10px auto;transform:rotate(90deg)}.swap-button:hover{transform:rotate(270deg)}.value-input-container{width:100%}.unit-examples{padding:15px 12px}}@media (max-width:480px){.unit-converter{padding:15px 10px}.unit-converter h2{font-size:1.4rem}.type-button{font-size:.9rem;padding:10px 8px}.conversion-section{padding:15px 12px}.conversion-type-title{font-size:1.2rem}.conversion-type-description{font-size:.9rem;padding:8px 10px}.unit-select,.value-input{font-size:1rem;padding:12px}.swap-button{font-size:1.2rem;height:40px;width:40px}.unit-examples h4{font-size:1rem}.example-row{font-size:.9rem;padding:6px}}:root{--primary-light:#6b87eb;--primary-dark:#3a53c2;--secondary-light:#ffc08a;--secondary-dark:#e56e00;--success-light:#a0f5a9;--success-dark:#33a746;--danger-color:#ff6b6b;--danger-light:#ffa5a5;--danger-dark:#e53e3e}.unit-converter-training{background-color:#fff;background-color:var(--card-background);border:2px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 6px 15px #00000012;box-shadow:var(--shadow);font-family:Comic Sans MS,Yuanti SC,YouYuan,Arial Rounded MT Bold,Varela Round,sans-serif;font-family:var(--font-family);margin:20px auto;max-width:750px;padding:25px}.unit-converter-training h2{color:#4a6bdf;color:var(--primary-color);font-size:2rem;font-weight:700;margin-bottom:25px;padding-bottom:12px;position:relative;text-align:center;text-shadow:1px 1px 2px #0000001a}.unit-converter-training h2:after{background:linear-gradient(90deg,#6b87eb,#ffc08a);background:linear-gradient(to right,var(--primary-light),var(--secondary-light));border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:100px}.training-setup{background-color:#f8f9ff;background-color:var(--background-light);border:1px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 8px #0000000a;margin-bottom:20px;padding:25px}.training-intro{background-color:#69a5ff14;border-left:4px solid #6b87eb;border-left:4px solid var(--primary-light);border-radius:8px;border-radius:var(--border-radius-sm);color:#5a5a6e;color:var(--text-secondary);font-size:1.1rem;line-height:1.6;margin-bottom:25px;padding:12px 15px}.difficulty-selection,.type-selection{margin-bottom:25px;position:relative}.difficulty-selection label,.type-selection label{color:#3a3a4a;color:var(--text-primary);display:block;font-size:1.1rem;font-weight:600;margin-bottom:10px}.difficulty-select,.type-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234a6bdf' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:18px;border:2px solid #6b87eb;border:2px solid var(--primary-light);border-radius:8px;border-radius:var(--border-radius-sm);box-shadow:0 2px 4px #00000005;color:#3a3a4a;color:var(--text-primary);font-size:1.1rem;padding:14px;transition:all .3s ease;width:100%}.difficulty-select:focus,.type-select:focus{border-color:#4a6bdf;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6bdf33;outline:none}.difficulty-description{background-color:#ff983814;border-left:4px solid #ffc08a;border-left:4px solid var(--secondary-light);border-radius:8px;border-radius:var(--border-radius-sm);color:#5a5a6e;color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin-top:10px;padding:12px 15px}.start-button{background-color:#4a6bdf;background-color:var(--primary-color);border:none;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 10px #4a6bdf4d;color:#fff;cursor:pointer;display:block;font-size:1.2rem;font-weight:600;padding:16px;transition:all .3s ease;width:100%}.start-button:hover{background-color:#3a53c2;background-color:var(--primary-dark);box-shadow:0 6px 15px #4a6bdf66;transform:translateY(-2px)}.start-button:active{box-shadow:0 2px 5px #4a6bdf4d;transform:translateY(1px)}.start-button:disabled{background-color:#c5c5d5;box-shadow:none;cursor:not-allowed;transform:none}.training-question{background-color:#fff;background-color:var(--card-background);border:1px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 6px 15px #00000012;box-shadow:var(--shadow);padding:25px}.question-header{align-items:center;border-bottom:2px dotted #d1dcff;display:flex;flex-wrap:wrap;justify-content:space-between;margin-bottom:20px;padding-bottom:12px}.question-number{background-color:#4a6bdf1a;border-radius:20px;color:#4a6bdf;color:var(--primary-color);font-size:1.1rem;font-weight:700;padding:6px 12px}.difficulty-badge{background-color:#ff9838;background-color:var(--secondary-color);box-shadow:0 2px 5px #ff98384d;color:#fff;font-size:.9rem;padding:5px 12px}.difficulty-badge,.timer{border-radius:20px;font-weight:700}.timer{background-color:#ff98381a;color:#ff9838;color:var(--secondary-color);padding:6px 12px}.question-content{background-color:#f8f9ff;background-color:var(--background-light);border:1px dashed #c9d6ff;border-radius:12px;border-radius:var(--border-radius);font-size:1.3rem;line-height:1.6;margin-bottom:25px;padding:20px;text-align:center}.highlight{background-color:#4a6bdf1a;border-radius:4px;color:#4a6bdf;color:var(--primary-color);font-weight:700;padding:2px 6px}.answer-form,.input-group{margin-bottom:20px}.input-group{align-items:center;display:flex}.answer-input{border:2px solid #c9d6ff;border-radius:8px;border-radius:var(--border-radius-sm);flex:1 1;font-size:1.2rem;font-weight:600;padding:16px;text-align:center;transition:all .3s ease}.answer-input:focus{border-color:#4a6bdf;border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6bdf33;outline:none}.answer-input.correct{background-color:#4cd9641a;border-color:#4cd964;border-color:var(--success-color)}.answer-input.incorrect{background-color:#ff6b6b1a;border-color:#ff6b6b;border-color:var(--danger-color)}.unit-label{background-color:#4a6bdf1a;border-radius:8px;border-radius:var(--border-radius-sm);color:#4a6bdf;color:var(--primary-color);font-size:1.2rem;font-weight:700;margin-left:12px;padding:8px 12px;text-align:center;width:120px}.submit-button{background-color:#4a6bdf;background-color:var(--primary-color);border:none;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 10px #4a6bdf4d;color:#fff;cursor:pointer;display:block;font-size:1.2rem;font-weight:600;padding:16px;transition:all .3s ease;width:100%}.submit-button:hover{background-color:#3a53c2;background-color:var(--primary-dark);box-shadow:0 6px 15px #4a6bdf66;transform:translateY(-2px)}.submit-button:active{box-shadow:0 2px 5px #4a6bdf4d;transform:translateY(1px)}.submit-button.next{background-color:#4cd964;background-color:var(--success-color);box-shadow:0 4px 10px #4cd9644d}.submit-button.next:hover{background-color:#33a746;background-color:var(--success-dark);box-shadow:0 6px 15px #4cd96466}.answer-feedback{border-radius:8px;border-radius:var(--border-radius-sm);margin-top:15px;padding:15px}.answer-feedback.correct{background-color:#4cd9641a;border-left:4px solid #4cd964;border-left:4px solid var(--success-color);color:#33a746;color:var(--success-dark)}.answer-feedback.incorrect{background-color:#ff6b6b1a;border-left:4px solid #ff6b6b;border-left:4px solid var(--danger-color);color:#e53e3e;color:var(--danger-dark)}.time-spent{font-size:1rem;margin-top:5px}.training-results{background-color:#fff;background-color:var(--card-background);border:1px solid #e1e8ff;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 6px 15px #00000012;box-shadow:var(--shadow);overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.training-results h3{color:#4a6bdf;color:var(--primary-color);font-size:1.6rem;margin-bottom:25px;margin-top:0;padding-bottom:12px;position:relative;text-align:center}.training-results h3:after{background:linear-gradient(90deg,#6b87eb,#ffc08a);background:linear-gradient(to right,var(--primary-light),var(--secondary-light));border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.training-results h4{border-bottom:2px dotted #d1dcff;color:#4a6bdf;color:var(--primary-color);font-size:1.3rem;margin-bottom:15px;margin-top:30px;padding-bottom:10px}.stats-summary{display:flex;flex-direction:column;gap:15px;margin-bottom:20px;width:100%}.stat-group{grid-gap:15px;display:grid;width:100%}.stat-item{background-color:#f8f9ff;border-radius:8px;min-width:0}.stat-label{color:#5a5a6e}.stat-value,.stat-value-text{color:#4a6bdf}.results-details{background-color:#f8f9ff;border-radius:8px}.desktop-results th{color:#4a6bdf}.result-card{border-radius:8px}.result-card.correct{border-left:4px solid #4cd964}.result-card.incorrect{border-left:4px solid #ff6b6b}.result-question-number{color:#4a6bdf}.result-status.correct{color:#4cd964}.result-status.incorrect{color:#ff6b6b}.result-question{color:#3a3a4a}.result-detail-item,.result-question{border-radius:8px}.result-label{color:#5a5a6e}.result-value{color:#4a6bdf}.restart-button{background-color:#ff9838;background-color:var(--secondary-color);border:none;border-radius:12px;border-radius:var(--border-radius);box-shadow:0 4px 10px #ff98384d;color:#fff;cursor:pointer;display:block;font-size:1.2rem;font-weight:600;margin-top:25px;padding:16px;transition:all .3s ease;width:100%}.restart-button:hover{background-color:#e56e00;background-color:var(--secondary-dark);box-shadow:0 6px 15px #ff983866;transform:translateY(-2px)}.restart-button:active{box-shadow:0 2px 5px #ff98384d;transform:translateY(1px)}@media (max-width:768px){.unit-converter-training{border-radius:8px;border-radius:var(--border-radius-sm);margin:10px;padding:20px 15px}.unit-converter-training h2{font-size:1.6rem;padding-bottom:10px}.unit-converter-training h2:after{height:3px;width:80px}.training-setup{padding:20px 15px}.question-content{font-size:1.1rem;line-height:1.5;padding:15px 10px}.question-header{align-items:flex-start;flex-direction:column;row-gap:8px}.difficulty-badge{margin:5px 0}.timer{align-self:flex-end}.input-group{align-items:stretch;flex-direction:column}.unit-label{margin-left:0;margin-top:8px;padding:10px;text-align:center;width:auto}.stat-group{grid-template-columns:repeat(2,1fr)}.desktop-results{display:none}.mobile-results{display:block}.results-details{background-color:initial;border:none;max-height:none;overflow:visible}input[type=number],input[type=text],select{font-size:16px}.restart-button:active,.start-button:active,.submit-button:active{transform:translateY(1px)}.stat-empty{display:none}}@media (max-width:480px){.unit-converter-training{padding:15px 10px}.training-setup{padding:15px 12px}.question-content{font-size:1rem;padding:12px 8px}.highlight{display:inline-block}.stat-value{font-size:1.3rem}.stat-group{grid-template-columns:1fr}.stat-item{flex-basis:calc(33.333% - 6px);padding:10px 5px}.stat-label{font-size:.75rem;margin-bottom:2px}.stat-value,.stat-value-text{font-size:.9rem}.result-card-body{padding:12px 10px}.result-question{font-size:.95rem;margin-bottom:10px}.result-details-row{gap:6px;padding-top:8px}.result-detail-item{font-size:.9rem;min-width:30%}.result-label{font-size:.8rem}.result-value{font-size:.9rem}.stat-group:last-child .stat-item:first-child{flex-basis:100%}}.confetti-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:1000}.confetti{animation:confetti-fall 4s ease-in-out forwards,confetti-shake 3s ease-in-out infinite;height:10px;opacity:.9;position:absolute;top:-20px;transform-origin:center center;width:10px;will-change:transform,opacity}.confetti-square{border-radius:3px}.confetti-circle{border-radius:50%}.confetti-triangle{background-color:initial!important;border-bottom:8px solid;border-left:5px solid #0000;border-right:5px solid #0000;height:0!important;width:0!important}.confetti-rectangle{border-radius:3px;height:12px!important;width:8px!important}.confetti-diamond{border-radius:3px;transform:rotate(45deg)}@keyframes confetti-fall{0%{opacity:1;top:-50px;transform:translateY(0) rotate(0)}80%{opacity:.7}to{opacity:0;top:100%;transform:translateY(0) rotate(1turn)}}@keyframes confetti-shake{0%{transform:skew(0deg,0deg) translateX(0)}25%{transform:skew(5deg,5deg) translateX(-5px)}50%{transform:skew(0deg,0deg) translateX(10px)}75%{transform:skew(-5deg,-5deg) translateX(5px)}to{transform:skew(0deg,0deg) translateX(0)}}.perfect-score{animation:perfect-score-pulse 2s infinite;color:#ffb02e;text-shadow:0 0 5px #ffb02e80}@keyframes perfect-score-pulse{0%,to{color:#4a6bdf;color:var(--primary-color);text-shadow:0 0 5px #4a6bdf80;transform:scale(1)}50%{color:#ffb02e;text-shadow:0 0 10px #ffb02eb3;transform:scale(1.1)}}.perfect-badge{animation:success-badge-pulse 1.5s infinite;background-color:#ffb02e1a;border-radius:20px;color:#ffb02e;display:inline-block;font-size:1.1em;margin-left:10px;padding:5px 10px;vertical-align:middle}.perfect-result{animation:perfect-result-glow 3s infinite}.perfect-result .stat-group{grid-gap:15px;display:grid;gap:15px;width:100%}@media (min-width:769px){.perfect-result .stat-group{grid-template-columns:repeat(3,1fr)}}@media (min-width:481px) and (max-width:768px){.perfect-result .stat-group{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.perfect-result .stat-group{grid-template-columns:1fr}}.perfect-result .stat-group:nth-child(2) .stat-item:nth-child(2){animation:gradient-shift 3s ease infinite;background:linear-gradient(45deg,#ffcf4d,#ffb02e 50%,#ff8c00);background-size:200% 200%}.perfect-result .stat-group:nth-child(2) .stat-item:nth-child(2) .stat-label,.perfect-result .stat-group:nth-child(2) .stat-item:nth-child(2) .stat-value{color:#fff;text-shadow:0 1px 2px #0003}@keyframes gradient-shift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes perfect-result-glow{0%,to{box-shadow:0 2px 15px #4a6bdf1a}50%{box-shadow:0 2px 25px #ffb02e4d}}@keyframes success-badge-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.login-prompt-overlay{align-items:center;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.login-prompt{background:#fff;background:var(--card-background);border-radius:12px;box-shadow:0 4px 6px #0000001a;max-width:400px;padding:2rem;text-align:center;width:90%}.login-prompt h3{color:#4a6bdf;color:var(--primary-color);margin-bottom:1rem}.login-prompt p{color:var(--text-color);margin-bottom:1.5rem}.prompt-buttons{display:flex;gap:1rem;justify-content:center}.login-prompt button{border:none;border-radius:8px;cursor:pointer;font-size:1rem;padding:.75rem 1.5rem;transition:all .3s ease}.login-button{background-color:#4a6bdf;background-color:var(--primary-color);color:#fff}.login-button:hover{background-color:var(--primary-hover);transform:translateY(-2px)}.cancel-button{background-color:#ff9838;background-color:var(--secondary-color);color:var(--text-color)}.cancel-button:hover{background-color:var(--secondary-hover);transform:translateY(-2px)}.save-status{margin:15px 0;min-height:24px;text-align:center}.saving-message{animation:pulse 1.5s infinite;color:#5a5a6e;color:var(--text-secondary)}.saved-message{color:#4cd964;color:var(--success-color);font-weight:700}.error-message{color:#ff6b6b;font-weight:700}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@media (min-width:769px){.stat-group{grid-template-columns:repeat(3,1fr)}}@media (min-width:481px) and (max-width:768px){.stat-group{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.stat-group{grid-template-columns:1fr}}.training-history{color:var(--text-color);margin:0 auto;max-width:1200px;padding:20px}.error,.loading,.no-records{background:var(--card-bg);border-radius:12px;color:var(--text-color);font-size:1.2rem;margin-top:20px;padding:40px;text-align:center}.history-controls{align-items:center;background:var(--card-bg);border-radius:8px;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:20px;padding:15px}.sort-controls,.time-filter{align-items:center;display:flex;gap:10px}.time-filter select{font-size:.9rem}.sort-button,.time-filter select{background:var(--bg-color);border:1px solid var(--border-color);border-radius:6px;color:var(--text-color);padding:8px 12px}.sort-button{cursor:pointer;transition:all .2s}.sort-button:hover{background:var(--hover-color)}.sort-button.active{background:var(--primary-color);border-color:var(--primary-color);color:#fff}.overall-stats{background:var(--card-bg);border-radius:12px;margin-bottom:30px;padding:20px}.overall-stats h3{color:var(--primary-color);margin-bottom:15px;margin-top:0;text-align:center}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(5,1fr)}.stat-box{background:var(--bg-color);border-radius:8px;padding:15px;text-align:center;transition:all .3s}.stat-box:hover{box-shadow:0 5px 15px #0000001a;transform:translateY(-3px)}.stat-box .stat-value{color:var(--primary-color);font-size:1.8rem;font-weight:700;margin-bottom:5px}.stat-box .stat-label{color:var(--text-secondary);font-size:.9rem}.records-list{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin-bottom:30px}.record-card{background:var(--card-bg);border-radius:12px;box-shadow:0 2px 4px #0000001a;cursor:pointer;display:flex;flex-direction:column;padding:20px;transition:all .3s ease}.record-card:hover{box-shadow:0 4px 12px #00000026;transform:translateY(-3px)}.record-card.selected{border:2px solid var(--primary-color)}.record-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.record-info{display:flex;flex-direction:column;gap:5px}.record-type{color:var(--primary-color);font-size:1.1em;font-weight:700}.record-difficulty{background:var(--secondary-color);border-radius:4px;color:var(--text-color);display:inline-block;font-size:.85em;max-width:fit-content;padding:4px 8px}.record-date{color:var(--text-secondary);font-size:.9em}.record-progress{margin-bottom:15px}.progress-bar{background:var(--bg-color);border-radius:5px;height:10px;margin-bottom:5px;overflow:hidden}.progress-fill{background:var(--success-color);border-radius:5px;height:100%;transition:width .5s ease}.progress-text{color:var(--text-secondary);font-size:.9em;text-align:right}.record-stats{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:15px}.stat-item{align-items:center;background:var(--bg-color);border-radius:6px;display:flex;justify-content:space-between;padding:8px}.stat-label{font-size:.9em}.stat-value{color:var(--text-color)}.view-details-btn{background:var(--primary-color);border:none;border-radius:8px;color:#fff;cursor:pointer;margin-top:auto;padding:10px;transition:all .3s}.view-details-btn:hover{background:var(--primary-hover)}.record-details{background-color:var(--card-background);border:1px solid #e1e8ff;border-radius:var(--border-radius);box-shadow:var(--shadow);margin-top:20px;overflow:hidden;padding:25px;position:relative;transition:all .3s ease}.record-details h3{color:var(--primary-color);font-size:1.6rem;margin-bottom:25px;margin-top:0;padding-bottom:12px;position:relative;text-align:center}.record-details h3:after{background:linear-gradient(to right,var(--primary-light),var(--secondary-light));border-radius:2px;bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.detail-summary{display:flex;flex-direction:column;gap:15px;margin-bottom:20px}.stat-group{flex-wrap:wrap;gap:15px}.stat-item{background-color:var(--background-light);border:1px solid #e1e8ff;border-radius:var(--border-radius-sm);box-shadow:0 2px 6px #0000000f;flex:1 1;min-width:150px;padding:18px 15px;text-align:center;transition:all .3s ease}.stat-item:hover{box-shadow:0 4px 10px #0000001a;transform:translateY(-3px)}.stat-empty{visibility:visible}.stat-label{color:var(--text-secondary);display:block;font-size:1rem;font-weight:600;margin-bottom:8px}.stat-value{font-size:1.6rem}.stat-value,.stat-value-text{color:var(--primary-color);font-weight:700}.stat-value-text{font-size:1.3rem}.results-details{-webkit-overflow-scrolling:touch;background-color:var(--background-light);border:1px solid #e1e8ff;border-radius:var(--border-radius-sm);margin-top:20px;max-height:600px;overflow-y:auto}.desktop-results{border-collapse:collapse;width:100%}.desktop-results td,.desktop-results th{border-bottom:1px solid #e1e8ff;padding:12px 15px;text-align:left}.desktop-results th{background-color:#4a6bdf1a;color:var(--primary-color);font-weight:700;position:sticky;top:0}.desktop-results tr.correct td{background-color:#4cd9640d}.desktop-results tr.incorrect td{background-color:#ff6b6b0d}.desktop-results tr:hover td{background-color:#4a6bdf08}.mobile-results{display:none;padding:10px}.result-card{background-color:#fff;border:1px solid #e1e8ff;border-radius:var(--border-radius-sm);box-shadow:0 2px 6px #0000000f;margin-bottom:15px;overflow:hidden;transition:all .3s ease}.result-card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-3px)}.result-card.correct{border-left:4px solid var(--success-color)}.result-card.incorrect{border-left:4px solid var(--danger-color)}.result-card-header{background-color:#4a6bdf0d;border-bottom:1px solid #e1e8ff;display:flex;justify-content:space-between;padding:12px 15px}.result-question-number{color:var(--primary-color);font-weight:700}.result-status{font-weight:700}.result-status.correct{color:var(--success-color)}.result-status.incorrect{color:var(--danger-color)}.result-card-body{background-color:#fff;padding:15px}.result-question{background-color:#4a6bdf0d;border-radius:var(--border-radius-sm);color:var(--text-primary);font-weight:700;line-height:1.4;margin-bottom:12px;padding:6px 10px}.result-details-row{border-top:1px dashed #d1dcff;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding-top:10px}.result-detail-item{background-color:#4a6bdf05;border-radius:var(--border-radius-sm);flex:1 1;min-width:30%;padding:8px 5px;text-align:center}.result-label{color:var(--text-secondary);display:block;font-size:.9rem;font-weight:600;margin-bottom:3px}.result-value{color:var(--primary-color);font-weight:700}@media (max-width:768px){.record-details{border-radius:var(--border-radius-sm);margin:10px;padding:20px 15px}.record-details h3{font-size:1.6rem;padding-bottom:10px}.stat-group{flex-direction:row;flex-wrap:wrap;gap:8px}.stat-item{flex-basis:calc(50% - 4px);min-width:0;padding:12px 10px}.desktop-results{display:none}.mobile-results{display:block}.results-details{background-color:initial;border:none;max-height:none;overflow:visible}.stat-empty{display:none}}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(3,1fr)}.detail-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.detail-summary,.stats-grid{grid-template-columns:1fr}.answer-details{flex-direction:column;gap:8px}}.tabs{border-bottom:2px solid #eee;display:flex;margin-bottom:20px}.tab{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:10px 20px;position:relative;transition:all .3s ease}.tab.active{color:#1890ff}.tab.active:after{background-color:#1890ff;bottom:-2px;content:"";height:2px;left:0;position:absolute;width:100%}.leaderboard-container{background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a;margin-top:20px;padding:24px}.leaderboard-list{display:flex;flex-direction:column;gap:16px;margin-top:20px}.leaderboard-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;padding:16px;transition:all .3s ease}.leaderboard-item:hover{border-color:#1890ff;box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.rank{align-items:center;background:#1890ff;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:18px;font-weight:700;height:40px;justify-content:center;width:40px}.rank,.user-info{margin-right:16px}.user-info{flex:1 1}.name{color:#333;font-size:18px;font-weight:500;margin-bottom:4px}.training-info{display:flex;gap:8px}.difficulty,.training-type{background:#e6f7ff;border-radius:4px;color:#1890ff;font-size:14px;padding:4px 8px}.stats{display:flex;gap:24px}.stat-group{align-items:center;display:flex;flex-direction:column;min-width:80px}.stat-label{color:#666;font-size:14px;margin-bottom:4px}.stat-value{color:#333;font-size:16px;font-weight:500}@media (max-width:768px){.leaderboard-container{padding:16px}.leaderboard-item{align-items:flex-start;flex-direction:column;padding:12px}.rank,.user-info{margin-bottom:12px}.user-info{margin-right:0}.stats{justify-content:space-between;width:100%}.stat-group{min-width:auto}}.auth-container{align-items:center;background-color:var(--background-light);display:flex;justify-content:center;min-height:calc(100vh - 60px);overflow:hidden;padding:20px;position:relative}.auth-container:before{background-image:radial-gradient(circle at 10% 20%,#4a6bdf1a 0,#0000 20%),radial-gradient(circle at 90% 80%,#ff98381a 0,#0000 20%);content:"";height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:-1}.auth-box{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:var(--card-background);border:1px solid #4a6bdf1a;border-radius:var(--border-radius);box-shadow:var(--shadow);max-width:400px;padding:40px;position:relative;width:100%;z-index:1}.auth-box h2{color:var(--primary-color);font-size:1.8rem;margin-bottom:30px;text-align:center;text-shadow:1px 1px 2px #0000001a}.form-group{margin-bottom:25px}.form-group label{color:var(--text-secondary);display:block;font-size:1.1rem;font-weight:600;margin-bottom:10px}.form-group input{background-color:#fffc;border:2px solid #4a6bdf33;border-radius:var(--border-radius-sm);font-family:var(--font-family);font-size:1rem;padding:12px 15px;transition:all .3s ease;width:100%}.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #4a6bdf1a;outline:none}.form-group input:disabled{background-color:#0000000d;cursor:not-allowed}.error-message{background-color:#ff6b6b1a;border:1px solid var(--danger-light);border-radius:var(--border-radius-sm);color:var(--danger-color);font-weight:600;margin-bottom:20px;padding:10px;text-align:center}.auth-button{background-color:var(--primary-color);border:none;border-radius:var(--border-radius-sm);color:#fff;cursor:pointer;font-family:var(--font-family);font-size:1.1rem;font-weight:600;letter-spacing:1px;padding:14px;text-transform:uppercase;transition:all .3s ease;width:100%}.auth-button:hover{background-color:var(--primary-dark);box-shadow:0 4px 10px #4a6bdf4d;transform:translateY(-2px)}.auth-button:disabled{background-color:var(--text-light);box-shadow:none;cursor:not-allowed;transform:none}.auth-links{margin-top:25px;text-align:center}.auth-links p{color:var(--text-secondary);margin:0}.auth-links a{color:var(--primary-color);font-weight:600;transition:color .3s ease}.auth-links a:hover{color:var(--primary-dark);text-decoration:underline}@media (max-width:768px){.auth-box{padding:30px}.auth-box h2{font-size:1.6rem}.form-group label{font-size:1rem}.form-group input{font-size:.95rem}.auth-button{font-size:1rem}}@media (max-width:480px){.auth-box{padding:20px}.auth-box h2{font-size:1.4rem}.form-group label{font-size:.95rem}.form-group input{font-size:.9rem;padding:10px 12px}.auth-button{font-size:.95rem;padding:12px}}.user-status{position:absolute;right:20px;top:10px;z-index:1000}.user-menu-container{position:relative}.user-info{align-items:center;display:flex;gap:12px}.welcome{color:#333;font-size:14px}.logout-button{background:none;border:1px solid #4a90e2;border-radius:4px;color:#4a90e2;cursor:pointer;font-size:14px;padding:4px 12px;transition:all .3s}.logout-button:hover{background:#4a90e2;color:#fff}.auth-links{align-items:center;display:flex;gap:8px}.auth-links a{color:#4a90e2;font-size:14px;text-decoration:none;transition:color .3s}.auth-links a:hover{color:#357abd}.divider{color:#ddd;font-size:14px}@media (max-width:480px){.user-status{right:16px;top:8px}.welcome{font-size:12px}.logout-button{font-size:12px;padding:3px 8px}.auth-links a{font-size:12px}}:root{--primary-color:#4a6bdf;--primary-hover:#3a53c2;--secondary-color:#ff9838;--secondary-hover:#e56e00;--success-color:#4cd964;--error-color:#ff6b6b;--bg-color:#f0f8ff;--card-bg:#fff;--text-color:#3a3a4a;--text-secondary:#5a5a6e;--border-color:#e0e0e0;--hover-color:#f5f5f5;--background-light:#f8f9ff;--card-background:#fff;--text-primary:#3a3a4a;--text-light:#767686;--border-radius:12px;--border-radius-sm:8px;--shadow:0 6px 15px #00000012;--font-family:"Comic Sans MS","Yuanti SC","YouYuan","Arial Rounded MT Bold","Varela Round",sans-serif}body{background-color:#f0f8ff;background-color:var(--bg-color);background-image:linear-gradient(45deg,#f0f8ff,#fff);background-image:linear-gradient(45deg,var(--bg-color) 0,#fff 100%);color:#3a3a4a;color:var(--text-color);font-family:Comic Sans MS,Yuanti SC,YouYuan,Arial Rounded MT Bold,Varela Round,sans-serif;font-family:var(--font-family);margin:0;overflow-x:hidden;padding:0}.app-container,body{min-height:100vh;position:relative}.app-container{display:flex;flex-direction:column;overflow:hidden}.bubbles{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:-1}.bubble{background:linear-gradient(to right bottom,#fffc,#ffffff1a);border-radius:50%;box-shadow:0 2px 15px #4a6bdf1a;position:absolute;z-index:-1}.bubble-1{animation:float 20s ease-in-out infinite;height:80px;left:5%;top:10%;width:80px}.bubble-2{animation:float 15s ease-in-out 2s infinite;height:40px;right:10%;top:20%;width:40px}.bubble-3{animation:float 25s ease-in-out 4s infinite;bottom:15%;height:100px;right:5%;width:100px}.bubble-4{animation:float 18s ease-in-out 6s infinite;bottom:10%;height:50px;left:10%;width:50px}.bubble-5{animation:float 22s ease-in-out 3s infinite;height:70px;left:15%;top:40%;width:70px}.bubble-6{animation:float 19s ease-in-out 5s infinite;height:60px;right:15%;top:70%;width:60px}@keyframes float{0%,to{transform:translateY(0) translateX(0) rotate(0deg)}25%{transform:translateY(-20px) translateX(10px) rotate(5deg)}50%{transform:translateY(10px) translateX(20px) rotate(10deg)}75%{transform:translateY(-10px) translateX(-10px) rotate(5deg)}}.app-header{align-items:center;background-color:#fff;box-shadow:0 2px 15px #0000000d;display:flex;justify-content:space-between;padding:15px 20px;position:relative;z-index:5}.main-nav{display:flex;gap:15px}.main-nav a{background-color:#f0f8ff;background-color:var(--bg-color);border:2px solid #0000;border-radius:30px;color:#5a5a6e;color:var(--text-secondary);font-size:1.1rem;font-weight:600;padding:10px 20px;text-decoration:none;transition:all .3s ease}.main-nav a:hover{box-shadow:0 4px 10px #0000001a;color:#4a6bdf;color:var(--primary-color);transform:translateY(-3px)}.main-nav a.active,.main-nav a:hover{border-color:#4a6bdf;border-color:var(--primary-color)}.main-nav a.active{background-color:#4a6bdf;background-color:var(--primary-color);box-shadow:0 4px 10px #4a6bdf4d;color:#fff}.app-content{box-sizing:border-box;flex:1 1;margin:0 auto;max-width:1200px;padding:20px;width:100%}.app-footer{background-color:#fff;box-shadow:0 -2px 10px #00000008;margin-top:20px;padding:15px;position:relative;text-align:center;z-index:5}.app-footer,.loading-container{color:#5a5a6e;color:var(--text-secondary)}.loading-container{align-items:center;display:flex;font-size:1.2rem;height:300px;justify-content:center}@media (max-width:768px){.app-header{flex-direction:column;gap:15px;padding:15px 10px}.main-nav{justify-content:center;width:100%}.main-nav a{font-size:1rem;padding:8px 15px}.app-content{padding:15px}}@media (max-width:480px){.main-nav{flex-wrap:wrap;gap:10px}.main-nav a{flex:1 1;font-size:.9rem;min-width:80px;padding:6px 12px;text-align:center}.app-content{padding:10px}.bubble-1,.bubble-3,.bubble-5{opacity:.5}}
/*# sourceMappingURL=main.15b7fcaf.css.map*/