@keyframes --fade-in{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0 0}}@keyframes --slide-in-from-left{0%{opacity:0;translate:-20px 10px;scale:.95}to{opacity:1;translate:0 0;scale:1}}@keyframes --slide-in-from-right{0%{opacity:0;translate:20px 10px;scale:.95}to{opacity:1;translate:0 0;scale:1}}@keyframes --slide-in-down{0%{opacity:0;translate:0 -30px}to{opacity:1;translate:0 0}}@keyframes --slide-in-up{0%{opacity:0;translate:0 30px}to{opacity:1;translate:0 0}}@keyframes --scale-in{0%{opacity:0;scale:.95}to{opacity:1;scale:1}}@keyframes --float{0%,to{translate:0 0}50%{translate:0 -20px}}@keyframes --shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes --pulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes --spin{0%{rotate:0deg}to{rotate:360deg}}@keyframes --blink{0%,to{opacity:1}50%{opacity:0}}@keyframes --typing-dot{0%,60%,to{opacity:.4;scale:1}30%{opacity:1;scale:1.2}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.introduction-section p{margin-bottom:1.2em;font-size:1.05em}.introduction-section strong{color:var(--body-text);font-weight:600}.introduction-section .steps-list{list-style:none;margin:1.5rem 0;padding-left:0;counter-reset:--step-counter}.introduction-section .steps-list>li{position:relative;margin-block-end:2rem;padding-inline-start:3.5rem;counter-increment:--step-counter}.introduction-section .steps-list>li:last-child{margin-block-end:1rem}.introduction-section .steps-list>li:before{content:counter(--step-counter);position:absolute;inset-block-start:0;inset-inline-start:0;width:2.5rem;height:2.5rem;color:#fff;background:linear-gradient(135deg,#1d8aff,#0097e9);box-shadow:0 4px 8px #0000001a;border-radius:50%;font-size:1.125rem;font-weight:700;transition:scale .25s var(--ease-elastic-4);display:flex;justify-content:center;align-items:center}.introduction-section .steps-list>li:not(:last-child):after{content:"";position:absolute;inset-block-start:2.5rem;inset-inline-start:1.25rem;width:2px;height:calc(100% - 1.5rem);background:linear-gradient(180deg,#1d8aff66,#0097e91a)}.introduction-section .steps-list>li:hover:before{scale:1.1}.introduction-section .steps-list>li ul{margin-block-start:.75rem;margin-inline-start:1.5rem}.introduction-section .steps-list>li ul li{margin-block-end:.5rem}.introduction-section .steps-list>li ul li::marker{color:#1d8aff}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(500px,100%),1fr));gap:1.5rem}.categories-grid>*{opacity:0;animation:--fade-in .5s var(--ease-out-3) forwards}.categories-grid>*:nth-child(10n-9){animation-delay:.1s}.categories-grid>*:nth-child(10n-8){animation-delay:.2s}.categories-grid>*:nth-child(10n-7){animation-delay:.3s}.categories-grid>*:nth-child(10n-6){animation-delay:.4s}.categories-grid>*:nth-child(10n-5){animation-delay:.5s}.categories-grid>*:nth-child(10n-4){animation-delay:.6s}.categories-grid>*:nth-child(10n-3){animation-delay:.7s}.categories-grid>*:nth-child(10n-2){animation-delay:.8s}.categories-grid>*:nth-child(10n-1){animation-delay:.9s}.categories-grid>*:nth-child(10n-0){animation-delay:1s}.categories-grid .category-card{position:relative;padding:1.5rem;background-color:var(--card-bg);box-shadow:0 4px 8px #0000001a;border:1px solid var(--card-border);border-radius:1rem;flex-direction:column;isolation:isolate;gap:1rem;overflow:hidden;display:flex;transition:translate .25s var(--ease-out-3),box-shadow .25s var(--ease-out-3)}.categories-grid .category-card:hover:not(:disabled){box-shadow:0 8px 16px #0000001f;translate:0 -2px}.categories-grid .category-card:active:not(:disabled){translate:0 0}.categories-grid .category-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#1d8aff08,#0097e903);border-radius:inherit;opacity:1;z-index:-1}.categories-grid .category-card[hidden]{display:none}.categories-grid .category-card .category-title{position:relative;width:fit-content;color:var(--section-title);font-weight:600;line-height:1.25;display:inline-block}.categories-grid .category-card .category-title:after{content:"";position:absolute;inset-block-end:calc(-.25rem - 1.5px);inset-inline-start:0;width:100%;height:3px;background:linear-gradient(90deg,#1d8aff,#0097e9);border-radius:100vw}.categories-grid .category-card .category-description{color:var(--body-text);line-height:1.625;opacity:.9}.categories-grid .category-card .modes-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:1rem}.categories-grid .category-card .modes-grid .mode-card{padding:1rem;color:inherit;background-color:var(--card-bg);box-shadow:0 2px 4px #00000014;border:1px solid var(--card-border);border-radius:.75rem;text-decoration:none;transition:scale .25s var(--ease-out-3),box-shadow .25s var(--ease-out-3),translate .25s var(--ease-out-3)}.categories-grid .category-card .modes-grid .mode-card[hidden]{display:none}.categories-grid .category-card .modes-grid .mode-card:hover{box-shadow:0 8px 16px #0000001f;translate:0 -4px;scale:1.05}.categories-grid .category-card .modes-grid .mode-card:hover .material-symbols-outlined{scale:1.15}.categories-grid .category-card .modes-grid .mode-card:active{translate:0 -2px;scale:1.02}.categories-grid .category-card .modes-grid .mode-card:focus-visible{outline:2px solid #4f46e5;outline-offset:-2px}.categories-grid .category-card .modes-grid .mode-card .material-symbols-outlined{transition:scale .35s var(--ease-elastic-4)}.categories-grid .subjects-empty{grid-column:1/-1;text-align:center;opacity:.6}.categories-grid .subjects-empty[hidden]{display:none}.categories-header{position:relative}.categories-header .subject-search{position:absolute;inset-block-end:.75rem;inset-inline-end:0;z-index:1500}.categories-header .subject-search-toggle{position:relative;padding:0;width:2rem;height:2rem;color:var(--body-text);background-color:var(--card-bg);box-shadow:0 2px 4px #00000014;border:1px solid var(--card-border);border-radius:100vw;transition:color .25s var(--ease-out-3),background-color .25s var(--ease-out-3),border-color .25s var(--ease-out-3),box-shadow .25s var(--ease-out-3);cursor:pointer;display:flex;justify-content:center;align-items:center}.categories-header .subject-search-toggle:hover,.categories-header .subject-search-toggle[aria-expanded=true]{background-color:var(--message-bg);box-shadow:0 4px 8px #0000001a}.categories-header .subject-search-toggle .subject-search-indicator{position:absolute;inset-block-start:.125rem;inset-inline-end:.125rem;width:.5rem;height:.5rem;background:#1d8aff;border-radius:50%;display:none}.categories-header .subject-search-toggle .material-symbols-outlined{font-size:1.25rem}.categories-header .subject-search-toggle.is-filtering .subject-search-indicator{display:block}.subject-search-panel{margin-block-end:1.5rem;margin-inline-start:auto;padding:1rem;width:min(26rem,100%);background-color:var(--card-bg);box-shadow:0 2px 4px #00000014;border:1px solid var(--card-border);border-radius:.75rem;flex-direction:column;gap:.75rem;font-size:1rem;font-weight:400;display:flex}.subject-search-panel[hidden]{display:none}.subject-search-panel .subject-search-field{padding:.5rem .75rem;background-color:var(--body-bg);border:1px solid var(--card-border);border-radius:.5rem;align-items:center;gap:.5rem;display:flex}.subject-search-panel .subject-search-field:focus-within{border-color:#1d8aff}.subject-search-panel .subject-search-field .material-symbols-outlined{opacity:.6}.subject-search-panel .subject-search-field input{flex:1;min-width:0;color:var(--body-text);background:transparent;border:none;outline:none;font:inherit}.subject-search-panel .subject-filter-chips{display:flex;flex-wrap:wrap;gap:.5rem}.subject-search-panel .subject-filter-chip{padding:.25rem .75rem;color:var(--body-text);background-color:var(--card-bg);border:1px solid var(--card-border);border-radius:100vw;font:inherit;font-size:.875rem;transition:color .25s var(--ease-out-3),background-color .25s var(--ease-out-3),border-color .25s var(--ease-out-3);cursor:pointer}.subject-search-panel .subject-filter-chip:hover{background-color:var(--message-bg)}.subject-search-panel .subject-filter-chip[aria-pressed=true]{color:#fff;background:linear-gradient(135deg,#1d8aff,#0097e9);border-color:transparent}@keyframes --gradient-shift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.step-by-step{--bor: var(--card-border);box-sizing:border-box;background-color:var(--card-bg);display:flex;flex-direction:column;gap:1rem;counter-reset:--quiz-total 0 --quiz-correct 0;padding:1rem;border:solid 1px var(--card-border);border-radius:2rem}.step-by-step .divider{height:1px;background-color:var(--bor);border:none}.step-by-step:after{content:"Score: " counter(--quiz-correct) " / " counter(--quiz-total);color:var(--body-text);font-weight:600;display:none}.step-by-step:has(.step-question-radio:checked):after{display:block}.step-by-step .retry-wrong{padding:.75rem 1rem;color:var(--body-text);background-color:var(--card-bg);border:1px solid var(--bor);border-radius:.5rem;align-self:flex-start;font:inherit;cursor:pointer;display:none}.step-by-step .retry-wrong:hover,.step-by-step .retry-wrong:focus-visible{background-color:var(--message-bg)}.step-by-step:has(.step-question-choice:not([data-type=correct]) .step-question-radio:checked) .retry-wrong{display:block}.step-by-step .step{counter-increment:--quiz-total;box-sizing:border-box;background-color:var(--card-bg);display:flex;flex-direction:column;gap:1rem}.step-by-step .step:has(.step-question-choice[data-type=correct] .step-question-radio:checked){counter-increment:--quiz-total --quiz-correct}.step-by-step .step .step-question-choices{display:flex;flex-direction:column;gap:1rem;padding:1rem;border:solid 1px var(--card-border);border-radius:1rem}.step-by-step .step .step-question-choices .step-question-choice{position:relative;background-color:var(--card-bg);border-radius:.25rem;transition:background-color .15s var(--ease-3),scale .1s var(--ease-3);cursor:pointer}.step-by-step .step .step-question-choices .step-question-choice:hover .step-question-choice-content{background-color:rgb(from lightblue r g b/30%)}.step-by-step .step .step-question-choices .step-question-choice:active{scale:.98}.step-by-step .step .step-question-choices .step-question-choice .step-question-choice-content{padding:.5rem 1rem;border-radius:.125rem;transition:background-color .15s var(--ease-3)}.step-by-step .step .step-question-choices .step-question-choice[data-type=correct]:has(.step-question-radio:checked) .step-question-choice-content{color:#444;background-color:#91ee91}.step-by-step .step .step-question-choices .step-question-choice:not([data-type=correct]):has(.step-question-radio:checked) .step-question-choice-content{background-color:#f99}.step-by-step .step .step-question-choices .step-question-choice .answer-explanation{position:relative;box-sizing:border-box;margin-block-start:1rem;padding:1rem;background-color:rgb(from var(--card-bg) h s calc(l - 3%));border-radius:.25rem;overflow:hidden;display:none}.step-by-step .step .step-question-choices .step-question-choice .answer-explanation:before{content:"";position:absolute;inset:0;width:.25rem;height:100%;background-color:red}.step-by-step .step .step-question-choices .step-question-choice[data-type=correct] .answer-explanation:before{background-color:#2d2}.step-by-step .step .step-question-choices .step-question-choice .step-question-radio{position:absolute;inset-block-start:-1px;inset-inline-start:-1px;width:0;height:0;visibility:hidden}.step-by-step .step .step-question-choices:has(.step-question-radio:checked) .step-question-choice[data-type=correct]:not(:has(.step-question-radio:checked)) .step-question-choice-content{color:#444;background-color:#c6f6c6}.step-by-step .step .step-question-choices .step-question-choice:has(.step-question-radio:checked) .answer-explanation,.step-by-step .step .step-question-choices:has(.step-question-radio:checked) .step-question-choice[data-type=correct] .answer-explanation{display:block}
