:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media(prefers-color-scheme:light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f0f2f5;color:#333;margin:0;padding:2rem;display:flex;justify-content:center;align-items:center;min-height:100vh;box-sizing:border-box}.App{width:100%;max-width:1200px;margin:auto;background:#fff;border-radius:8px;box-shadow:0 4px 12px #0000001a;box-sizing:border-box;text-align:center}h1,h2,h3{color:#1877f2;text-align:center}.LandingPage header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;border-bottom:1px solid #ddd}.LandingPage .hero{text-align:center;padding:4rem 2rem;background-color:#f9f9f9}.LandingPage .offerings{padding:2rem;display:flex;justify-content:space-around;gap:1rem}.LandingPage .offering{flex:1;padding:1.5rem;border:1px solid #ddd;border-radius:8px;text-align:center}form{display:flex;flex-direction:column;gap:1rem;padding:2rem;max-width:400px;margin:2rem auto;align-items:center}input[type=text],input[type=password],input[type=number]{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:6px;box-sizing:border-box;transition:border-color .3s}input[type=text]:focus,input[type=password]:focus,input[type=number]:focus{border-color:#1877f2;outline:none}button{background-color:#1877f2;color:#fff;border:none;padding:.75rem;border-radius:6px;cursor:pointer;font-size:1rem;transition:background-color .3s}button:hover{background-color:#166fe5}.AdminPage,.FactoringGame{padding:2rem;text-align:center}ul{list-style:none;padding:0;display:inline-block}li{background:#f9f9f9;padding:.75rem;border-radius:4px;margin-bottom:.5rem;border-left:4px solid #1877f2;text-align:left}p{color:#666}.message{font-weight:700;min-height:1.5em}.correct{color:#4caf50}.incorrect{color:#f44336}@media(max-width:768px){body{padding:1rem}.App{box-shadow:none;border-radius:0}.LandingPage header{flex-direction:column;padding:1rem}.LandingPage .hero{padding:2rem 1rem}.LandingPage .offerings{flex-direction:column;padding:1rem}.LandingPage .offering{flex:none;width:100%;margin-bottom:1rem}form{padding:1rem;margin:1rem auto}}@media(max-width:480px){h1{font-size:2em}.LandingPage header h1{font-size:1.5em}}.AdminPage{padding:2rem;background-color:#f9f9f9;min-height:100vh}.AdminPage h1{color:#333;text-align:center;margin-bottom:2rem}.tabs{display:flex;justify-content:center;margin-bottom:2rem;border-bottom:2px solid #ddd}.tab-button{background:none;border:none;padding:1rem 2rem;font-size:1.1rem;cursor:pointer;color:#666;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s}.tab-button:hover{color:#1877f2}.tab-button.active{color:#1877f2;border-bottom:2px solid #1877f2;font-weight:700}.tab-content{display:none}.tab-content.active{display:block;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.create-session,.create-student{background:#fff;padding:1.5rem;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:2rem;display:flex;gap:1rem;align-items:center;max-width:600px;margin-left:auto;margin-right:auto}.create-student{flex-direction:column;align-items:stretch}.create-session input[type=text],.create-student input[type=text],.create-student input[type=password]{flex-grow:1;padding:.75rem;border:1px solid #ddd;border-radius:4px}.create-session button,.create-student button{background-color:#1877f2;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer;transition:background-color .3s}.create-session button:hover,.create-student button:hover{background-color:#166fe5}.sessions-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.session-card{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.session-card h4{color:#1877f2;margin-top:0;border-bottom:1px solid #eee;padding-bottom:.5rem}.modules-section,.students-section{display:flex;flex-direction:column;gap:.5rem}.modules-section ul,.students-section ul{list-style:none;padding:0;margin:0}.modules-section li,.students-section li{background-color:#f0f2f5;padding:.5rem 1rem;border-radius:4px;margin-bottom:.5rem;display:flex;justify-content:space-between;align-items:center}.session-card select{padding:.5rem;border-radius:4px;border:1px solid #ddd}.session-card button{background-color:#e4e6eb;color:#333;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer;transition:background-color .3s}.session-card button:hover{background-color:#dcdfe4}.students-section li button{background-color:transparent;color:#f44336;padding:.25rem;border-radius:50%;line-height:1}.students-section li button:hover{background-color:#fdecea}.AdminPage>button{display:block;margin:2rem auto 0;background-color:#f44336;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:4px;cursor:pointer}.AdminPage>button:hover{background-color:#d32f2f}
