@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap";:root{--color-bg: #FFFBF0;--color-surface: #FFFFFF;--color-text: #1A1A2E;--color-text-muted: #4A4A6A;--color-border: #1A1A2E;--color-primary: #FF6B9D;--color-primary-hover: #FF4081;--color-secondary: #4ECDC4;--color-secondary-hover: #3ABFB6;--color-accent-yellow: #FFD93D;--color-accent-lime: #A8E6CF;--color-accent-purple: #C3AED6;--color-accent-orange: #FF8C42;--color-accent-blue: #6C9BCF;--color-success: #2ECC71;--color-success-bg: #D5F5E3;--color-error: #E74C3C;--color-error-bg: #FADBD8;--color-warning: #F39C12;--color-warning-bg: #FFF3CD;--border-width: 3px;--border-thick: 4px;--shadow-offset: 5px;--shadow-offset-sm: 3px;--shadow-offset-lg: 8px;--shadow: var(--shadow-offset) var(--shadow-offset) 0 var(--color-border);--shadow-sm: var(--shadow-offset-sm) var(--shadow-offset-sm) 0 var(--color-border);--shadow-lg: var(--shadow-offset-lg) var(--shadow-offset-lg) 0 var(--color-border);--shadow-hover: calc(var(--shadow-offset) + 2px) calc(var(--shadow-offset) + 2px) 0 var(--color-border);--shadow-active: 2px 2px 0 var(--color-border);--font-main: "Space Grotesk", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono", monospace;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--transition-fast: .12s ease;--transition-normal: .2s ease}[data-theme=dark]{--color-bg: #1A1A2E;--color-surface: #16213E;--color-text: #FFFBF0;--color-text-muted: #B8B8D0;--color-border: #FFFBF0;--color-primary: #FF6B9D;--color-secondary: #4ECDC4;--color-success-bg: #1A3A2A;--color-error-bg: #3A1A1A;--color-warning-bg: #3A2A1A}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--color-bg: #1A1A2E;--color-surface: #16213E;--color-text: #FFFBF0;--color-text-muted: #B8B8D0;--color-border: #FFFBF0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;color-scheme:light dark;-webkit-tap-highlight-color:transparent}body{font-family:var(--font-main);background-color:var(--color-bg);color:var(--color-text);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.skip-link{position:fixed;top:-100%;left:var(--space-md);z-index:9999;padding:var(--space-sm) var(--space-md);background:var(--color-primary);color:var(--color-text);font-weight:700;border:var(--border-width) solid var(--color-border);text-decoration:none;transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-md)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;text-wrap:balance}h1{font-size:2.5rem;letter-spacing:-.02em}h2{font-size:2rem;letter-spacing:-.01em}h3{font-size:1.5rem}h4{font-size:1.25rem}p{max-width:65ch}.tabular-nums{font-variant-numeric:tabular-nums}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.page-content{padding:var(--space-2xl) 0}.app-header{background:var(--color-accent-yellow);border-bottom:var(--border-thick) solid var(--color-border);padding:var(--space-md) 0;position:sticky;top:0;z-index:100}.app-header .container{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.app-header__logo{font-size:1.5rem;font-weight:700;text-decoration:none;color:var(--color-text);display:flex;align-items:center;gap:var(--space-sm)}.app-header__logo:hover{opacity:.8}.app-header__nav{display:flex;align-items:center;gap:var(--space-sm)}.app-header__link{padding:var(--space-xs) var(--space-md);font-weight:600;text-decoration:none;color:var(--color-text);border:2px solid transparent;border-radius:var(--radius-sm);transition:background-color var(--transition-fast),border-color var(--transition-fast)}.app-header__link:hover{background:#00000014;border-color:var(--color-border)}.app-header__link--active{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-sm)}.neo-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);font-family:var(--font-main);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow);cursor:pointer;text-decoration:none;border-radius:var(--radius-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast);touch-action:manipulation;-webkit-user-select:none;user-select:none}.neo-btn:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-hover)}.neo-btn:active{transform:translate(2px,2px);box-shadow:var(--shadow-active)}.neo-btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.neo-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:var(--shadow)}.neo-btn--primary{background:var(--color-primary);color:#fff}.neo-btn--secondary{background:var(--color-secondary)}.neo-btn--yellow{background:var(--color-accent-yellow)}.neo-btn--lime{background:var(--color-accent-lime)}.neo-btn--danger{background:var(--color-error);color:#fff}.neo-btn--sm{padding:var(--space-xs) var(--space-sm);font-size:.85rem}.neo-btn--lg{padding:var(--space-md) var(--space-xl);font-size:1.15rem}.neo-btn--block{width:100%}.neo-card{background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow);border-radius:var(--radius-md);padding:var(--space-lg);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.neo-card--hover:hover{transform:translate(-2px,-2px);box-shadow:var(--shadow-hover)}.neo-card--active:active{transform:translate(2px,2px);box-shadow:var(--shadow-active)}.neo-card--yellow{background:var(--color-accent-yellow)}.neo-card--pink{background:var(--color-primary);color:#fff}.neo-card--teal{background:var(--color-secondary)}.neo-card--lime{background:var(--color-accent-lime)}.neo-card--purple{background:var(--color-accent-purple)}.neo-input{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-main);font-size:1rem;font-weight:500;color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);transition:box-shadow var(--transition-fast)}.neo-input:focus{outline:none;box-shadow:var(--shadow)}.neo-input:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.neo-input::placeholder{color:var(--color-text-muted)}.neo-label{display:block;font-weight:600;margin-bottom:var(--space-xs);font-size:.9rem;text-transform:uppercase;letter-spacing:.05em}.neo-select{width:100%;padding:var(--space-sm) var(--space-md);font-family:var(--font-main);font-size:1rem;font-weight:500;color:var(--color-text);background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-sm);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M6 8L1 3h10z' fill='%231A1A2E'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.neo-select:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.neo-badge{display:inline-flex;align-items:center;gap:var(--space-xs);padding:2px var(--space-sm);font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;border:2px solid var(--color-border);border-radius:var(--radius-sm)}.neo-badge--success{background:var(--color-success);color:#fff}.neo-badge--error{background:var(--color-error);color:#fff}.neo-badge--warning{background:var(--color-warning)}.neo-badge--info{background:var(--color-accent-blue);color:#fff}.neo-progress{width:100%;height:28px;background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;box-shadow:var(--shadow-sm)}.neo-progress__bar{height:100%;background:var(--color-secondary);transition:width .3s ease;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:var(--color-text);min-width:fit-content;padding:0 var(--space-sm)}.neo-timer{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-md);font-family:var(--font-mono);font-size:1.4rem;font-weight:700;font-variant-numeric:tabular-nums;background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow);border-radius:var(--radius-sm)}.neo-timer--warning{background:var(--color-warning);animation:timer-pulse .8s ease-in-out infinite alternate}.neo-timer--danger{background:var(--color-error);color:#fff;animation:timer-pulse .4s ease-in-out infinite alternate}@keyframes timer-pulse{0%{transform:scale(1)}to{transform:scale(1.05)}}.theme-toggle{padding:var(--space-xs) var(--space-sm);font-size:1.3rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast);line-height:1}.theme-toggle:hover{transform:scale(1.1)}.theme-toggle:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:var(--space-lg)}.question-nav{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.question-nav__btn{width:42px;height:42px;display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:.85rem;font-weight:700;font-variant-numeric:tabular-nums;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);touch-action:manipulation}.question-nav__btn:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--color-border)}.question-nav__btn--current{background:var(--color-accent-yellow);border-width:3px;transform:scale(1.1)}.question-nav__btn:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.option-card{display:flex;align-items:flex-start;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-surface);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-sm);border-radius:var(--radius-md);cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast);touch-action:manipulation;-webkit-user-select:none;user-select:none}.option-card:hover:not(.option-card--disabled){transform:translate(-2px,-2px);box-shadow:var(--shadow);background:var(--color-accent-yellow)}.option-card:active:not(.option-card--disabled){transform:translate(1px,1px);box-shadow:var(--shadow-active)}.option-card:focus-visible{outline:3px solid var(--color-primary);outline-offset:2px}.option-card--selected{background:var(--color-accent-blue);color:#fff}.option-card--correct{background:var(--color-success);color:#fff;border-color:#1a7a3a}.option-card--incorrect{background:var(--color-error);color:#fff;border-color:#a93226}.option-card--disabled{opacity:.7;cursor:not-allowed}.option-card__key{display:flex;align-items:center;justify-content:center;width:36px;height:36px;font-family:var(--font-mono);font-weight:700;font-size:.9rem;background:#0000001a;border:2px solid currentColor;border-radius:var(--radius-sm);flex-shrink:0}.option-card__text{font-size:1.05rem;font-weight:500;line-height:1.5;padding-top:4px}.feedback{padding:var(--space-md) var(--space-lg);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);font-weight:600;margin-top:var(--space-md);box-shadow:var(--shadow-sm)}.feedback--correct{background:var(--color-success-bg);border-color:var(--color-success)}.feedback--incorrect{background:var(--color-error-bg);border-color:var(--color-error)}.neo-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);z-index:200}.neo-modal{width:min(900px,100%);max-height:90vh;background:var(--color-surface);border:var(--border-thick) solid var(--color-border);box-shadow:var(--shadow-lg);border-radius:var(--radius-md);display:flex;flex-direction:column;overflow:hidden}.neo-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) var(--space-lg);background:var(--color-accent-yellow);border-bottom:var(--border-width) solid var(--color-border)}.neo-modal__body{padding:var(--space-lg);overflow:auto}.score-circle{width:200px;height:200px;border-radius:50%;border:var(--border-thick) solid var(--color-border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto var(--space-xl)}.score-circle__value{font-size:3.5rem;font-weight:700;line-height:1;font-family:var(--font-mono)}.score-circle{width:160px;height:160px;border-radius:50%;border:var(--border-thick) solid var(--color-border);display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0 auto var(--space-xl);box-shadow:var(--shadow);transition:transform var(--transition-fast)}.score-circle:hover{transform:scale(1.05) rotate(2deg)}.score-circle__value{font-size:3rem;font-weight:800;line-height:1;margin-bottom:var(--space-xs)}.score-circle__label{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;opacity:.9}.upload-zone{border:var(--border-width) dashed var(--color-border);border-radius:var(--radius-lg);padding:var(--space-3xl) var(--space-xl);text-align:center;cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast);background:var(--color-surface)}.upload-zone:hover{background:var(--color-accent-yellow);transform:translate(-2px,-2px)}.upload-zone--active{background:var(--color-accent-lime);border-style:solid}.ranking-table{width:100%;border-collapse:separate;border-spacing:0;border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow)}.ranking-table th{background:var(--color-accent-yellow);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem;padding:var(--space-md);text-align:left;border-bottom:var(--border-width) solid var(--color-border)}.ranking-table td{padding:var(--space-md);border-bottom:2px solid var(--color-border);font-weight:500}.ranking-table tr:last-child td{border-bottom:none}.ranking-table tr:hover td{background:#00000008}.ranking-table__rank{font-family:var(--font-mono);font-weight:700;font-size:1.1rem}.ranking-table__rank--gold{color:gold}.ranking-table__rank--silver{color:silver}.ranking-table__rank--bronze{color:#cd7f32}.rankings-quiz-list,.rankings-quiz-section{display:flex;flex-direction:column;gap:var(--space-lg)}.rankings-quiz-section__header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap}.rankings-mode-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg)}.rankings-mode-panel{border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);background:var(--color-surface)}.rankings-mode-panel__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin-bottom:var(--space-md)}.rankings-mode-panel__empty{padding:var(--space-lg);border:2px dashed var(--color-border);border-radius:var(--radius-sm);text-align:center;font-weight:600;color:var(--color-text-muted)}.rankings-table-wrap{width:100%;overflow-x:auto}.neo-radio-group{display:flex;flex-direction:column;gap:var(--space-sm)}.neo-radio{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-weight:500;padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.neo-radio:hover{background:#0000000d}.neo-radio input[type=radio]{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.neo-checkbox{display:flex;align-items:center;gap:var(--space-sm);cursor:pointer;font-weight:500;padding:var(--space-xs) var(--space-sm)}.neo-checkbox input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary);cursor:pointer}.hero{text-align:center;padding:var(--space-3xl) 0}.hero__title{font-size:clamp(2.5rem,5vw,4rem);margin-bottom:var(--space-md);line-height:1.1}.hero__title span{display:inline-block;background:var(--color-accent-yellow);padding:0 var(--space-sm);border:var(--border-width) solid var(--color-border);box-shadow:var(--shadow-sm);transform:rotate(-1deg)}.hero__subtitle{font-size:1.3rem;color:var(--color-text-muted);max-width:600px;margin:0 auto var(--space-xl)}.quiz-layout{display:grid;grid-template-columns:1fr 280px;gap:var(--space-xl);align-items:start}.quiz-layout__main{min-width:0}.quiz-layout__sidebar{position:sticky;top:80px}.quiz-mobile-nav{display:none}.form-group{margin-bottom:var(--space-lg)}.form-row{display:flex;gap:var(--space-md);align-items:flex-end}.review-item{padding:var(--space-lg);margin-bottom:var(--space-md);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.review-item--correct{border-left:6px solid var(--color-success)}.review-item--incorrect{border-left:6px solid var(--color-error)}.review-item__question{font-weight:700;margin-bottom:var(--space-md);font-size:1.05rem}.review-item__option{padding:var(--space-xs) var(--space-sm);margin-bottom:var(--space-xs);border-radius:var(--radius-sm);font-weight:500}.review-item__option--correct{background:var(--color-success-bg);border-left:4px solid var(--color-success)}.review-item__option--user-wrong{background:var(--color-error-bg);border-left:4px solid var(--color-error)}.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}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:var(--font-mono)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.flex{display:flex}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}@media(max-width:768px){h1{font-size:2rem}h2{font-size:1.5rem}.rankings-mode-grid,.quiz-layout{grid-template-columns:1fr}.quiz-layout__sidebar{display:none}.quiz-mobile-nav{display:block;position:sticky;top:76px;z-index:40}.quiz-mobile-nav .neo-btn{width:100%;justify-content:space-between;padding:var(--space-sm) var(--space-md);font-size:.9rem}.quiz-mobile-nav__panel{padding:var(--space-md);max-height:min(42vh,340px);overflow-y:auto}.quiz-grid{grid-template-columns:1fr}.container{padding:0 var(--space-md)}.hero__title{font-size:2rem}.form-row{flex-direction:column}.app-header__nav{gap:var(--space-xs)}.app-header__link{font-size:.85rem;padding:var(--space-xs) var(--space-sm)}}@media(max-width:480px){.question-nav__btn{width:36px;height:36px;font-size:.75rem}.neo-timer{font-size:1.1rem}}.option-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-surface);border:var(--border-width) solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);position:relative;box-shadow:var(--shadow-sm)}.option-card:hover:not(.option-card--disabled){transform:translate(-2px,-2px);box-shadow:var(--shadow);background:var(--color-bg)}.option-card--selected{background:var(--color-accent-blue);color:#fff;transform:translate(-3px,-3px);box-shadow:var(--shadow-sm)}.option-card--correct{background:var(--color-success);color:#fff}.option-card--incorrect{background:var(--color-error);color:#fff}.option-card--disabled{cursor:default;opacity:.8}.option-card__key{display:flex;align-items:center;justify-content:center;width:32px;height:32px;min-width:32px;background:var(--color-border);color:#fff;font-weight:700;border-radius:var(--radius-sm);font-size:.9rem}.option-card__key:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.option-card__text{font-weight:600;font-size:1.05rem}.question-nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:var(--space-xs)}.question-nav__btn{display:flex;align-items:center;justify-content:center;width:100%;height:40px;background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-border);border-radius:var(--radius-sm);font-weight:700;cursor:pointer;transition:all var(--transition-fast)}.question-nav__btn:hover{background:var(--color-bg);transform:translate(-1px,-1px)}.question-nav__btn--current{background:var(--color-border);color:var(--color-surface);box-shadow:2px 2px 0 var(--color-text-muted);transform:none}.question-nav__btn--answered{background:var(--color-accent-blue);color:#fff}.question-nav__btn--correct{background:var(--color-success);color:#fff}.question-nav__btn--incorrect{background:var(--color-error);color:#fff}.question-nav-scroll{max-height:calc(100vh - 180px);overflow-y:auto;padding-right:var(--space-xs)}.app-header{position:sticky;top:0;z-index:100;background:var(--color-bg);border-bottom:var(--border-width) solid var(--color-border);padding:var(--space-md) 0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.app-header__logo{font-size:1.5rem;font-weight:900;text-decoration:none;color:var(--color-text);display:inline-flex;align-items:center;gap:var(--space-xs);transition:transform var(--transition-fast)}.app-header__logo:hover{transform:rotate(-2deg) scale(1.05)}.theme-toggle{background:var(--color-surface);border:2px solid var(--color-border);border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;box-shadow:3px 3px 0 var(--color-border);transition:all var(--transition-fast)}.theme-toggle:hover{transform:translate(-1px,-1px);box-shadow:4px 4px 0 var(--color-border)}.quiz-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-lg)}
