.question-card__meta{display:flex;justify-content:space-between;margin-bottom:.5rem;color:#666}.question-card__category{font-weight:600}.question-card__text{font-size:1.125rem;margin:.5rem 0 1rem}.question-card__options{display:grid;gap:.5rem}.question-card__option{display:flex;align-items:center;padding:.5rem .75rem;border:1px solid #ddd;border-radius:8px}.question-card__option--selected{border-color:#1e88e5;background:#e3f2fd}.question-card__option-key{font-weight:700;margin:0 .5rem 0 .25rem}.quiz-page{max-width:720px;margin:0 auto;padding:1rem}.quiz-page__controls{display:flex;justify-content:space-between;margin-top:1rem}.quiz-page__nav-btn{padding:.5rem 1rem;border:1px solid #ccc;background:#fff;border-radius:6px;cursor:pointer}.quiz-page__nav-btn--primary{background:#1e88e5;color:#fff;border-color:#1e88e5}.quiz-page__status{text-align:center;padding:2rem}.quiz-page--start{text-align:center}.quiz-page__heading{margin-top:0}.quiz-page__lead{color:#555}.quiz-page__category{margin:1rem auto;max-width:360px;text-align:left}.quiz-page__category-label{display:block;margin-bottom:.25rem;font-weight:600}.quiz-page__intro{margin:1rem auto 1.5rem;max-width:720px;text-align:left;background:#f7f9fc;border:1px solid #e3eaf3;border-radius:8px;padding:1rem 1.25rem}.quiz-page__intro-title{margin:0 0 .5rem;font-size:1rem;color:#133d73}.quiz-page__intro-list{margin:0;padding-left:1.25rem;color:#334155}.quiz-page__intro-item{margin:.25rem 0;line-height:1.4}.select{position:relative;min-width:220px}.select__control{width:100%;display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border:1px solid #d0d7de;border-radius:8px;background:#fff;cursor:pointer}.select__value--placeholder{color:#777}.select__arrow{margin-left:.5rem;color:#666}.select__menu{position:absolute;left:0;right:0;z-index:20;margin-top:.25rem;background:#fff;border:1px solid #d0d7de;border-radius:8px;box-shadow:0 6px 20px #0000000f;max-height:240px;overflow:auto;padding:.25rem;list-style:none}.select__option{padding:.5rem;border-radius:6px;cursor:pointer}.select__option:hover{background:#f3f4f6}.select__option--selected{background:#e3f2fd}.select--disabled .select__control{background:#f3f4f6;cursor:not-allowed}.results-page{max-width:820px;margin:0 auto;padding:1rem}.results-page__summary{margin-bottom:1rem}.results-page__title{margin:0 0 .25rem}.results-page__score{font-size:1.25rem;margin-bottom:.5rem}.results-page__restart{padding:.5rem 1rem;background:#1e88e5;border:0;color:#fff;border-radius:6px}.results-page__list{list-style:none;padding:0;display:grid;gap:.75rem}.results-page__item{border:1px solid #ddd;border-left-width:6px;padding:.75rem;border-radius:6px}.results-page__item--correct{border-left-color:#2e7d32;background:#e8f5e9}.results-page__item--wrong{border-left-color:#c62828;background:#ffebee}.results-page__q{font-weight:600;margin-bottom:.25rem}.results-page__a{color:#333;margin-bottom:.25rem}.results-page__ex{color:#555}.results-page__back{display:inline-block;margin-top:1rem}.results-page__notice{text-align:center}.login-page{max-width:480px;margin:0 auto;padding:1rem}.login-page__title{margin:0 0 .75rem}.login-page__form{display:grid;gap:.75rem}.login-page__field{display:grid;gap:.25rem}.login-page__label{font-weight:600}.login-page__error{color:#c62828}.login-page__actions{display:flex;gap:.5rem;align-items:center}.login-page__submit{background:#1e88e5;color:#fff;border:0;padding:.5rem 1rem;border-radius:6px}.login-page__toggle{background:transparent;border:none;color:#1e88e5;cursor:pointer}.history-page{max-width:720px;margin:0 auto;padding:1rem}.history-page__title{margin-bottom:.75rem}.history-page__list{list-style:none;padding:0;display:grid;gap:.5rem}.history-page__item{display:flex;justify-content:space-between;border:1px solid #eee;padding:.5rem .75rem;border-radius:6px}.history-page__score{font-weight:700}.attempt-detail{max-width:820px;margin:0 auto;padding:1rem}.attempt-detail__title{margin-bottom:.25rem}.attempt-detail__summary{color:#555;margin-bottom:.75rem}.attempt-detail__list{list-style:none;padding:0;display:grid;gap:.75rem}.attempt-detail__item{border:1px solid #eee;border-left:6px solid #c62828;background:#ffebee;padding:.75rem;border-radius:6px}.attempt-detail__q{font-weight:700;margin-bottom:.25rem}.attempt-detail__a{margin-bottom:.25rem}.attempt-detail__ex{color:#444}.admin-questions{max-width:860px;margin:0 auto;padding:1rem}.admin-questions__title{margin:0 0 .5rem}.admin-questions__subtitle{margin-top:1.25rem}.admin-questions__filters{margin-bottom:.75rem}.admin-questions__form{display:grid;gap:.75rem;margin-bottom:1rem}.admin-questions__grid{display:grid;gap:.5rem;grid-template-columns:repeat(2,minmax(0,1fr))}.admin-questions__field{display:grid;gap:.25rem}.admin-questions__field--inline{grid-auto-flow:column;align-items:center;grid-template-columns:160px 1fr}.admin-questions__label{font-weight:600}.admin-questions__submit{align-self:start;background:#2e7d32;color:#fff;border:0;padding:.5rem 1rem;border-radius:6px}.admin-questions__actions{display:flex;gap:.5rem;align-items:center}.admin-questions__cancel{background:#9e9e9e;color:#fff;border:0;padding:.5rem 1rem;border-radius:6px}.admin-questions__error{color:#c62828}.admin-questions__list{list-style:none;padding:0;display:grid;gap:.5rem}.admin-questions__item{display:grid;gap:.25rem;border:1px solid #eee;padding:.5rem .75rem;border-radius:6px}.admin-questions__q{font-weight:600}.admin-questions__meta{color:#555}.admin-questions__row-actions{display:flex;gap:.5rem}.admin-questions__edit{background:#1e88e5;color:#fff;border:0;padding:.25rem .5rem;border-radius:4px}.admin-questions__delete{background:#c62828;color:#fff;border:0;padding:.25rem .5rem;border-radius:4px}.admin-questions__denied{padding:1rem;color:#c62828}.barchart{overflow-x:auto}.barchart__svg{font-size:12px;fill:#333}.barchart__label{dominant-baseline:middle}.barchart__value{font-size:11px;fill:#111}.admin-analytics{max-width:980px;margin:0 auto;padding:1rem}.admin-analytics__title{margin-bottom:.75rem}.admin-analytics__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;margin-bottom:1rem}.admin-analytics__cards--student{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-analytics__filters{margin-bottom:.75rem}.admin-analytics__filter{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:.5rem}.admin-analytics__filter-label{font-weight:600}.admin-analytics__card{border:1px solid #eee;border-radius:8px;padding:.75rem;text-align:center}.admin-analytics__metric{font-size:1.5rem;font-weight:700}.admin-analytics__label{color:#666}.admin-analytics__sub{color:#777;font-size:.875rem;margin-top:.25rem}.admin-analytics__section{margin-top:1rem}.admin-analytics__subtitle{margin-bottom:.5rem}.admin-analytics__note{color:#555;margin-bottom:.5rem}.admin-analytics__status{padding:1rem;text-align:center}.admin-users{max-width:820px;margin:0 auto;padding:1rem}.admin-users__title{margin-bottom:.75rem}.admin-users__form{display:grid;gap:.75rem;margin-bottom:1rem}.admin-users__field{display:grid;gap:.25rem}.admin-users__field--inline{grid-template-columns:120px 1fr;align-items:center}.admin-users__label{font-weight:600}.admin-users__submit{width:fit-content;background:#2e7d32;color:#fff;border:0;padding:.5rem 1rem;border-radius:6px}.admin-users__error{color:#c62828}.admin-users__list{list-style:none;padding:0;display:grid;gap:.5rem}.admin-users__item{display:grid;grid-template-columns:1fr auto auto;gap:.5rem;align-items:center;border:1px solid #eee;border-radius:6px;padding:.5rem .75rem}.admin-users__name{font-weight:700}.admin-users__email{color:#555}.admin-users__toggle{background:#1e88e5;color:#fff;border:0;padding:.25rem .5rem;border-radius:4px}.admin-users__status{text-align:center;padding:1rem}body{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;margin:0;color:#111}.app{max-width:960px;margin:0 auto}.app__header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;border-bottom:1px solid #eee}.app__nav{display:flex;align-items:center;gap:.75rem}.app__title{font-size:1.25rem;margin:0}.app__nav-link{color:#1e88e5;text-decoration:none;padding:.25rem;background:transparent;border:none;cursor:pointer}.app__nav-link--active{color:#0d47a1;border-bottom:2px solid #0d47a1;padding-bottom:2px}.app__main{padding:1rem}
